private void emit() throws IOException {
   ClassDeclaration decl =
       f.newClassDeclaration(
           new JavadocBuilder(f)
               .text("An abstract implementation of ")
               .linkType(context.resolve(model.getSymbol()))
               .text(" {0} description using WindGate CSV", importer ? "importer" : "exporter")
               .text(".")
               .toJavadoc(),
           new AttributeBuilder(f).Public().Abstract().toAttributes(),
           context.getTypeName(),
           context.resolve(Models.toName(f, importer ? IMPORTER_TYPE_NAME : EXPORTER_TYPE_NAME)),
           Collections.<com.asakusafw.utils.java.model.syntax.Type>emptyList(),
           createMembers());
   context.emit(decl);
 }
 private void emit() throws IOException {
   ClassDeclaration decl =
       f.newClassDeclaration(
           new JavadocBuilder(f)
               .text("TSVファイルなどのレコードを表すファイルを入力として<code>{0}</code>を読み出す", model.getName())
               .toJavadoc(),
           new AttributeBuilder(f).Public().Final().toAttributes(),
           context.getTypeName(),
           Collections.<TypeParameterDeclaration>emptyList(),
           null,
           Collections.singletonList(
               f.newParameterizedType(
                   context.resolve(ModelInput.class), context.resolve(model.getSymbol()))),
           createMembers());
   context.emit(decl);
 }
 private void emit() throws IOException {
   ClassDeclaration decl =
       f.newClassDeclaration(
           new JavadocBuilder(f)
               .text("Supports CSV for ")
               .linkType(context.resolve(model.getSymbol()))
               .text(".")
               .toJavadoc(),
           new AttributeBuilder(f).Public().toAttributes(),
           context.getTypeName(),
           Collections.<TypeParameterDeclaration>emptyList(),
           null,
           Collections.singletonList(
               f.newParameterizedType(
                   context.resolve(DataModelStreamSupport.class),
                   context.resolve(model.getSymbol()))),
           createMembers());
   context.emit(decl);
 }