Java gephi toolkit-创建一个新的导入器以从集合中获取数据

Java gephi toolkit-创建一个新的导入器以从集合中获取数据,java,graph,talend,gephi,Java,Graph,Talend,Gephi,我正在为Talend Open Studio构建一个用于网络分析的组件,我计划使用gephy toolkit,但输入数据必须来自数据流(为了保持简单,比如说java集合),而gephy toolkit只允许从文件(实际上是许多不同类型的文件)甚至rdbms导入,而不允许从java集合导入 我如何构建一个新的简单自定义导入器(如果一开始就可以构建的话。这似乎是可能的,至少对于GUI gephi cfr来说是这样。)?我自己找到了解决方案:我需要创建一个插口导入器 工厂 @ServiceProvi

我正在为Talend Open Studio构建一个用于网络分析的组件,我计划使用gephy toolkit,但输入数据必须来自数据流(为了保持简单,比如说java集合),而gephy toolkit只允许从文件(实际上是许多不同类型的文件)甚至rdbms导入,而不允许从java集合导入


我如何构建一个新的简单自定义导入器(如果一开始就可以构建的话。这似乎是可能的,至少对于GUI gephi cfr来说是这样。)?

我自己找到了解决方案:我需要创建一个插口导入器

  • 工厂

    @ServiceProvider(service = ImporterBuilder.class)
    public final class TalendCollectionImporterBuilder implements ImporterBuilder {
    
    public String getName() {
           return "Talend Flow Connection Importer";
        }
    
        public SpigotImporter buildImporter() {
           return new TalendCollectionImporter();
        }
    
    }
    
  • 进口商(存根)

public class TalendCollectionImporter implements SpigotImporter {

        private ContainerLoader container;
        private Report report;
        private ProgressTicket progressTicket;
        private boolean cancel = false;

        public boolean execute(ContainerLoader loader) {
            this.container = loader;
            this.report = new Report();

            // import stuff

            return !cancel;
        }

        public ContainerLoader getContainer() {
            return container;
        }

        public Report getReport() {
            return report;
        }

        public boolean cancel() {
            cancel = true;
            return true;
        }

}