CAMEL-8242: Camel Toolbox - Include documentation about languages

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/cc217571
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/cc217571
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/cc217571

Branch: refs/heads/master
Commit: cc217571e78e33c71a8102995c875c56647ad986
Parents: ed9a681
Author: Claus Ibsen <davscl...@apache.org>
Authored: Wed Jan 14 12:22:03 2015 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Wed Jan 14 15:38:23 2015 +0100

----------------------------------------------------------------------
 .../maven/packaging/PackageDataFormatMojo.java  | 110 ++++----
 .../maven/packaging/PackageLanguageMojo.java    | 110 ++++----
 .../maven/packaging/PrepareCatalogMojo.java     | 258 ++++++++++++++-----
 3 files changed, 300 insertions(+), 178 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/cc217571/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
----------------------------------------------------------------------
diff --git 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
index 3d343f0..dbe88b7 100644
--- 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
+++ 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
@@ -140,66 +140,68 @@ public class PackageDataFormatMojo extends AbstractMojo {
         // find camel-core and grab the data format model from there, and 
enrich this model with information from this artifact
         // and create json schema model file for this data format
         try {
-            Artifact camelCore = findCamelCoreArtifact(project);
-            if (camelCore != null) {
-                File core = camelCore.getFile();
-                if (core != null) {
-                    URL url = new URL("file", null, core.getAbsolutePath());
-                    URLClassLoader loader = new URLClassLoader(new URL[]{url});
-                    for (Map.Entry<String, String> entry : 
javaTypes.entrySet()) {
-                        String name = entry.getKey();
-                        String javaType = entry.getValue();
-                        String modelName = asModelName(name);
-
-                        InputStream is = 
loader.getResourceAsStream("org/apache/camel/model/dataformat/" + modelName + 
".json");
-                        if (is == null) {
-                            // use file input stream if we build camel-core 
itself, and thus do not have a JAR which can be loaded by URLClassLoader
-                            is = new FileInputStream(new File(core, 
"org/apache/camel/model/dataformat/" + modelName + ".json"));
-                        }
-                        String json = loadText(is);
-                        if (json != null) {
-                            DataFormatModel dataFormatModel = new 
DataFormatModel();
-                            dataFormatModel.setName(name);
-                            dataFormatModel.setModelName(modelName);
-                            dataFormatModel.setLabel("");
-                            
dataFormatModel.setDescription(project.getDescription());
-                            dataFormatModel.setJavaType(javaType);
-                            dataFormatModel.setGroupId(project.getGroupId());
-                            
dataFormatModel.setArtifactId(project.getArtifactId());
-                            dataFormatModel.setVersion(project.getVersion());
-
-                            List<Map<String, String>> rows = 
JSonSchemaHelper.parseJsonSchema("model", json, false);
-                            for (Map<String, String> row : rows) {
-                                if (row.containsKey("label")) {
-                                    dataFormatModel.setLabel(row.get("label"));
-                                }
-                                if (row.containsKey("javaType")) {
-                                    
dataFormatModel.setModelJavaType(row.get("javaType"));
-                                }
-                                // override description for camel-core, as 
otherwise its too generic
-                                if 
("camel-core".equals(project.getArtifactId())) {
-                                    if (row.containsKey("description")) {
-                                        
dataFormatModel.setLabel(row.get("description"));
+            if (count > 0) {
+                Artifact camelCore = findCamelCoreArtifact(project);
+                if (camelCore != null) {
+                    File core = camelCore.getFile();
+                    if (core != null) {
+                        URL url = new URL("file", null, 
core.getAbsolutePath());
+                        URLClassLoader loader = new URLClassLoader(new 
URL[]{url});
+                        for (Map.Entry<String, String> entry : 
javaTypes.entrySet()) {
+                            String name = entry.getKey();
+                            String javaType = entry.getValue();
+                            String modelName = asModelName(name);
+
+                            InputStream is = 
loader.getResourceAsStream("org/apache/camel/model/dataformat/" + modelName + 
".json");
+                            if (is == null) {
+                                // use file input stream if we build 
camel-core itself, and thus do not have a JAR which can be loaded by 
URLClassLoader
+                                is = new FileInputStream(new File(core, 
"org/apache/camel/model/dataformat/" + modelName + ".json"));
+                            }
+                            String json = loadText(is);
+                            if (json != null) {
+                                DataFormatModel dataFormatModel = new 
DataFormatModel();
+                                dataFormatModel.setName(name);
+                                dataFormatModel.setModelName(modelName);
+                                dataFormatModel.setLabel("");
+                                
dataFormatModel.setDescription(project.getDescription());
+                                dataFormatModel.setJavaType(javaType);
+                                
dataFormatModel.setGroupId(project.getGroupId());
+                                
dataFormatModel.setArtifactId(project.getArtifactId());
+                                
dataFormatModel.setVersion(project.getVersion());
+
+                                List<Map<String, String>> rows = 
JSonSchemaHelper.parseJsonSchema("model", json, false);
+                                for (Map<String, String> row : rows) {
+                                    if (row.containsKey("label")) {
+                                        
dataFormatModel.setLabel(row.get("label"));
+                                    }
+                                    if (row.containsKey("javaType")) {
+                                        
dataFormatModel.setModelJavaType(row.get("javaType"));
+                                    }
+                                    // override description for camel-core, as 
otherwise its too generic
+                                    if 
("camel-core".equals(project.getArtifactId())) {
+                                        if (row.containsKey("description")) {
+                                            
dataFormatModel.setLabel(row.get("description"));
+                                        }
                                     }
                                 }
-                            }
-                            getLog().debug("Model " + dataFormatModel);
+                                getLog().debug("Model " + dataFormatModel);
 
-                            // build json schema for the data format
-                            String properties = after(json, "  \"properties\": 
{");
-                            String schema = 
createParameterJsonSchema(dataFormatModel, properties);
-                            getLog().debug("JSon schema\n" + schema);
+                                // build json schema for the data format
+                                String properties = after(json, "  
\"properties\": {");
+                                String schema = 
createParameterJsonSchema(dataFormatModel, properties);
+                                getLog().debug("JSon schema\n" + schema);
 
-                            // write this to the directory
-                            File dir = new File(schemaOutDir, 
schemaSubDirectory(dataFormatModel.getJavaType()));
-                            dir.mkdirs();
+                                // write this to the directory
+                                File dir = new File(schemaOutDir, 
schemaSubDirectory(dataFormatModel.getJavaType()));
+                                dir.mkdirs();
 
-                            File out = new File(dir, name + ".json");
-                            FileOutputStream fos = new FileOutputStream(out, 
false);
-                            fos.write(schema.getBytes());
-                            fos.close();
+                                File out = new File(dir, name + ".json");
+                                FileOutputStream fos = new 
FileOutputStream(out, false);
+                                fos.write(schema.getBytes());
+                                fos.close();
 
-                            getLog().info("Generated " + out + " containing 
JSon schema for " + name + " data format");
+                                getLog().info("Generated " + out + " 
containing JSon schema for " + name + " data format");
+                            }
                         }
                     }
                 }

http://git-wip-us.apache.org/repos/asf/camel/blob/cc217571/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
----------------------------------------------------------------------
diff --git 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
index 5f52ce1..9442b2d 100644
--- 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
+++ 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
@@ -140,66 +140,68 @@ public class PackageLanguageMojo extends AbstractMojo {
         // find camel-core and grab the data format model from there, and 
enrich this model with information from this artifact
         // and create json schema model file for this data format
         try {
-            Artifact camelCore = findCamelCoreArtifact(project);
-            if (camelCore != null) {
-                File core = camelCore.getFile();
-                if (core != null) {
-                    URL url = new URL("file", null, core.getAbsolutePath());
-                    URLClassLoader loader = new URLClassLoader(new URL[]{url});
-                    for (Map.Entry<String, String> entry : 
javaTypes.entrySet()) {
-                        String name = entry.getKey();
-                        String javaType = entry.getValue();
-                        String modelName = asModelName(name);
-
-                        InputStream is = 
loader.getResourceAsStream("org/apache/camel/model/language/" + modelName + 
".json");
-                        if (is == null) {
-                            // use file input stream if we build camel-core 
itself, and thus do not have a JAR which can be loaded by URLClassLoader
-                            is = new FileInputStream(new File(core, 
"org/apache/camel/model/language/" + modelName + ".json"));
-                        }
-                        String json = loadText(is);
-                        if (json != null) {
-                            LanguageModel languageModel = new LanguageModel();
-                            languageModel.setName(name);
-                            languageModel.setModelName(modelName);
-                            languageModel.setLabel("");
-                            
languageModel.setDescription(project.getDescription());
-                            languageModel.setJavaType(javaType);
-                            languageModel.setGroupId(project.getGroupId());
-                            
languageModel.setArtifactId(project.getArtifactId());
-                            languageModel.setVersion(project.getVersion());
-
-                            List<Map<String, String>> rows = 
JSonSchemaHelper.parseJsonSchema("model", json, false);
-                            for (Map<String, String> row : rows) {
-                                if (row.containsKey("label")) {
-                                    languageModel.setLabel(row.get("label"));
-                                }
-                                if (row.containsKey("javaType")) {
-                                    
languageModel.setModelJavaType(row.get("javaType"));
-                                }
-                                // override description for camel-core, as 
otherwise its too generic
-                                if 
("camel-core".equals(project.getArtifactId())) {
-                                    if (row.containsKey("description")) {
-                                        
languageModel.setLabel(row.get("description"));
+            if (count > 0) {
+                Artifact camelCore = findCamelCoreArtifact(project);
+                if (camelCore != null) {
+                    File core = camelCore.getFile();
+                    if (core != null) {
+                        URL url = new URL("file", null, 
core.getAbsolutePath());
+                        URLClassLoader loader = new URLClassLoader(new 
URL[]{url});
+                        for (Map.Entry<String, String> entry : 
javaTypes.entrySet()) {
+                            String name = entry.getKey();
+                            String javaType = entry.getValue();
+                            String modelName = asModelName(name);
+
+                            InputStream is = 
loader.getResourceAsStream("org/apache/camel/model/language/" + modelName + 
".json");
+                            if (is == null) {
+                                // use file input stream if we build 
camel-core itself, and thus do not have a JAR which can be loaded by 
URLClassLoader
+                                is = new FileInputStream(new File(core, 
"org/apache/camel/model/language/" + modelName + ".json"));
+                            }
+                            String json = loadText(is);
+                            if (json != null) {
+                                LanguageModel languageModel = new 
LanguageModel();
+                                languageModel.setName(name);
+                                languageModel.setModelName(modelName);
+                                languageModel.setLabel("");
+                                
languageModel.setDescription(project.getDescription());
+                                languageModel.setJavaType(javaType);
+                                languageModel.setGroupId(project.getGroupId());
+                                
languageModel.setArtifactId(project.getArtifactId());
+                                languageModel.setVersion(project.getVersion());
+
+                                List<Map<String, String>> rows = 
JSonSchemaHelper.parseJsonSchema("model", json, false);
+                                for (Map<String, String> row : rows) {
+                                    if (row.containsKey("label")) {
+                                        
languageModel.setLabel(row.get("label"));
+                                    }
+                                    if (row.containsKey("javaType")) {
+                                        
languageModel.setModelJavaType(row.get("javaType"));
+                                    }
+                                    // override description for camel-core, as 
otherwise its too generic
+                                    if 
("camel-core".equals(project.getArtifactId())) {
+                                        if (row.containsKey("description")) {
+                                            
languageModel.setLabel(row.get("description"));
+                                        }
                                     }
                                 }
-                            }
-                            getLog().debug("Model " + languageModel);
+                                getLog().debug("Model " + languageModel);
 
-                            // build json schema for the data format
-                            String properties = after(json, "  \"properties\": 
{");
-                            String schema = 
createParameterJsonSchema(languageModel, properties);
-                            getLog().debug("JSon schema\n" + schema);
+                                // build json schema for the data format
+                                String properties = after(json, "  
\"properties\": {");
+                                String schema = 
createParameterJsonSchema(languageModel, properties);
+                                getLog().debug("JSon schema\n" + schema);
 
-                            // write this to the directory
-                            File dir = new File(schemaOutDir, 
schemaSubDirectory(languageModel.getJavaType()));
-                            dir.mkdirs();
+                                // write this to the directory
+                                File dir = new File(schemaOutDir, 
schemaSubDirectory(languageModel.getJavaType()));
+                                dir.mkdirs();
 
-                            File out = new File(dir, name + ".json");
-                            FileOutputStream fos = new FileOutputStream(out, 
false);
-                            fos.write(schema.getBytes());
-                            fos.close();
+                                File out = new File(dir, name + ".json");
+                                FileOutputStream fos = new 
FileOutputStream(out, false);
+                                fos.write(schema.getBytes());
+                                fos.close();
 
-                            getLog().info("Generated " + out + " containing 
JSon schema for " + name + " language");
+                                getLog().info("Generated " + out + " 
containing JSon schema for " + name + " language");
+                            }
                         }
                     }
                 }

http://git-wip-us.apache.org/repos/asf/camel/blob/cc217571/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
----------------------------------------------------------------------
diff --git 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
index 37ed638..286044a 100644
--- 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
+++ 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareCatalogMojo.java
@@ -40,7 +40,6 @@ import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.MavenProjectHelper;
 
 import static org.apache.camel.maven.packaging.PackageHelper.loadText;
-import static org.apache.camel.maven.packaging.PackageHelper.parseAsMap;
 
 /**
  * Prepares the camel catalog to include component, data format, and eip 
descriptors,
@@ -79,6 +78,13 @@ public class PrepareCatalogMojo extends AbstractMojo {
     protected File dataFormatsOutDir;
 
     /**
+     * The output directory for languages catalog
+     *
+     * @parameter 
default-value="${project.build.directory}/classes/org/apache/camel/catalog/languages"
+     */
+    protected File languagesOutDir;
+
+    /**
      * The output directory for models catalog
      *
      * @parameter 
default-value="${project.build.directory}/classes/org/apache/camel/catalog/models"
@@ -118,6 +124,7 @@ public class PrepareCatalogMojo extends AbstractMojo {
         executeModel();
         executeComponents();
         executeDataFormats();
+        executeLanguages();
     }
 
     protected void executeModel() throws MojoExecutionException, 
MojoFailureException {
@@ -442,6 +449,109 @@ public class PrepareCatalogMojo extends AbstractMojo {
         printDataFormatsReport(jsonFiles, duplicateJsonFiles, missingLabels, 
usedLabels);
     }
 
+    protected void executeLanguages() throws MojoExecutionException, 
MojoFailureException {
+        getLog().info("Copying all Camel language json descriptors");
+
+        // lets use sorted set/maps
+        Set<File> jsonFiles = new TreeSet<File>();
+        Set<File> duplicateJsonFiles = new TreeSet<File>();
+        Set<File> languageFiles = new TreeSet<File>();
+        Set<File> missingLabels = new TreeSet<File>();
+        Map<String, Set<String>> usedLabels = new TreeMap<String, 
Set<String>>();
+
+        // find all languages from the components directory
+        if (componentsDir != null && componentsDir.isDirectory()) {
+            File[] languages = componentsDir.listFiles();
+            if (languages != null) {
+                for (File dir : languages) {
+                    if (dir.isDirectory() && !"target".equals(dir.getName())) {
+                        File target = new File(dir, "target/classes");
+                        findLanguageFilesRecursive(target, jsonFiles, 
languageFiles, new CamelLanguagesFileFilter());
+                    }
+                }
+            }
+        }
+        if (coreDir != null && coreDir.isDirectory()) {
+            File target = new File(coreDir, "target/classes");
+            findLanguageFilesRecursive(target, jsonFiles, languageFiles, new 
CamelLanguagesFileFilter());
+        }
+
+        getLog().info("Found " + languageFiles.size() + " language.properties 
files");
+        getLog().info("Found " + jsonFiles.size() + " language json files");
+
+        // make sure to create out dir
+        languagesOutDir.mkdirs();
+
+        for (File file : jsonFiles) {
+            File to = new File(languagesOutDir, file.getName());
+            if (to.exists()) {
+                duplicateJsonFiles.add(to);
+                getLog().warn("Duplicate language name detected: " + to);
+            }
+            try {
+                copyFile(file, to);
+            } catch (IOException e) {
+                throw new MojoFailureException("Cannot copy file from " + file 
+ " -> " + to, e);
+            }
+
+            // check if we have a label as we want the data format to include 
labels
+            try {
+                String text = loadText(new FileInputStream(file));
+                // just do a basic label check
+                if (text.contains("\"label\": \"\"")) {
+                    missingLabels.add(file);
+                } else {
+                    String name = asComponentName(file);
+                    Matcher matcher = LABEL_PATTERN.matcher(text);
+                    // grab the label, and remember it in the used labels
+                    if (matcher.find()) {
+                        String label = matcher.group(1);
+                        String[] labels = label.split(",");
+                        for (String s : labels) {
+                            Set<String> languages = usedLabels.get(s);
+                            if (languages == null) {
+                                languages = new TreeSet<String>();
+                                usedLabels.put(s, languages);
+                            }
+                            languages.add(name);
+                        }
+                    }
+                }
+            } catch (IOException e) {
+                // ignore
+            }
+        }
+
+        File all = new File(languagesOutDir, "../languages.properties");
+        try {
+            FileOutputStream fos = new FileOutputStream(all, false);
+
+            String[] names = languagesOutDir.list();
+            List<String> languages = new ArrayList<String>();
+            // sort the names
+            for (String name : names) {
+                if (name.endsWith(".json")) {
+                    // strip out .json from the name
+                    String languageName = name.substring(0, name.length() - 5);
+                    languages.add(languageName);
+                }
+            }
+
+            Collections.sort(languages);
+            for (String name : languages) {
+                fos.write(name.getBytes());
+                fos.write("\n".getBytes());
+            }
+
+            fos.close();
+
+        } catch (IOException e) {
+            throw new MojoFailureException("Error writing to file " + all);
+        }
+
+        printLanguagesReport(jsonFiles, duplicateJsonFiles, missingLabels, 
usedLabels);
+    }
+
     private void printModelsReport(Set<File> json, Set<File> duplicate, 
Set<File> missingLabels, Map<String, Set<String>> usedLabels) {
         
getLog().info("================================================================================");
 
@@ -569,6 +679,43 @@ public class PrepareCatalogMojo extends AbstractMojo {
         
getLog().info("================================================================================");
     }
 
+    private void printLanguagesReport(Set<File> json, Set<File> duplicate, 
Set<File> missingLabels, Map<String, Set<String>> usedLabels) {
+        
getLog().info("================================================================================");
+        getLog().info("");
+        getLog().info("Camel language catalog report");
+        getLog().info("");
+        getLog().info("\tLanguages found: " + json.size());
+        for (File file : json) {
+            getLog().info("\t\t" + asComponentName(file));
+        }
+        if (!duplicate.isEmpty()) {
+            getLog().info("");
+            getLog().warn("\tDuplicate language detected: " + 
duplicate.size());
+            for (File file : duplicate) {
+                getLog().warn("\t\t" + asComponentName(file));
+            }
+        }
+        if (!missingLabels.isEmpty()) {
+            getLog().info("");
+            getLog().warn("\tMissing labels detected: " + 
missingLabels.size());
+            for (File file : missingLabels) {
+                getLog().warn("\t\t" + asComponentName(file));
+            }
+        }
+        if (!usedLabels.isEmpty()) {
+            getLog().info("");
+            getLog().info("\tUsed labels: " + usedLabels.size());
+            for (Map.Entry<String, Set<String>> entry : usedLabels.entrySet()) 
{
+                getLog().info("\t\t" + entry.getKey() + ":");
+                for (String name : entry.getValue()) {
+                    getLog().info("\t\t\t" + name);
+                }
+            }
+        }
+        getLog().info("");
+        
getLog().info("================================================================================");
+    }
+
     private static String asComponentName(File file) {
         String name = file.getName();
         if (name.endsWith(".json")) {
@@ -615,6 +762,25 @@ public class PrepareCatalogMojo extends AbstractMojo {
         }
     }
 
+    private void findLanguageFilesRecursive(File dir, Set<File> found, 
Set<File> languages, FileFilter filter) {
+        File[] files = dir.listFiles(filter);
+        if (files != null) {
+            for (File file : files) {
+                // skip files in root dirs as Camel does not store information 
there but others may do
+                boolean rootDir = "classes".equals(dir.getName()) || 
"META-INF".equals(dir.getName());
+                boolean jsonFile = !rootDir && file.isFile() && 
file.getName().endsWith(".json");
+                boolean languageFile = !rootDir && file.isFile() && 
file.getName().equals("language.properties");
+                if (jsonFile) {
+                    found.add(file);
+                } else if (languageFile) {
+                    languages.add(file);
+                } else if (file.isDirectory()) {
+                    findLanguageFilesRecursive(file, found, languages, filter);
+                }
+            }
+        }
+    }
+
     private class CamelComponentsFileFilter implements FileFilter {
 
         @Override
@@ -657,6 +823,27 @@ public class PrepareCatalogMojo extends AbstractMojo {
         }
     }
 
+    private class CamelLanguagesFileFilter implements FileFilter {
+
+        @Override
+        public boolean accept(File pathname) {
+            if (pathname.isDirectory() && pathname.getName().equals("model")) {
+                // do not check the camel-core model packages as there is no 
components there
+                return false;
+            }
+            if (pathname.isFile() && pathname.getName().endsWith(".json")) {
+                // must be a language json file
+                try {
+                    String json = loadText(new FileInputStream(pathname));
+                    return json != null && json.contains("\"language\":");
+                } catch (IOException e) {
+                    // ignore
+                }
+            }
+            return pathname.isDirectory() || (pathname.isFile() && 
pathname.getName().equals("language.properties"));
+        }
+    }
+
     public static void copyFile(File from, File to) throws IOException {
         FileChannel in = null;
         FileChannel out = null;
@@ -679,73 +866,4 @@ public class PrepareCatalogMojo extends AbstractMojo {
         }
     }
 
-    private static class DataFormatModel {
-        private String name;
-        private String description;
-        private String javaType;
-        private String groupId;
-        private String artifactId;
-        private String versionId;
-
-        public String getName() {
-            return name;
-        }
-
-        public void setName(String name) {
-            this.name = name;
-        }
-
-        public String getDescription() {
-            return description;
-        }
-
-        public void setDescription(String description) {
-            this.description = description;
-        }
-
-        public String getJavaType() {
-            return javaType;
-        }
-
-        public void setJavaType(String javaType) {
-            this.javaType = javaType;
-        }
-
-        public String getGroupId() {
-            return groupId;
-        }
-
-        public void setGroupId(String groupId) {
-            this.groupId = groupId;
-        }
-
-        public String getArtifactId() {
-            return artifactId;
-        }
-
-        public void setArtifactId(String artifactId) {
-            this.artifactId = artifactId;
-        }
-
-        public String getVersionId() {
-            return versionId;
-        }
-
-        public void setVersionId(String versionId) {
-            this.versionId = versionId;
-        }
-
-        @Override
-        public String toString() {
-            return "DataFormatModel["
-                    + "name='" + name + '\''
-                    + ", description='" + description + '\''
-                    + ", javaType='" + javaType + '\''
-                    + ", groupId='" + groupId + '\''
-                    + ", artifactId='" + artifactId + '\''
-                    + ", versionId='" + versionId + '\''
-                    + ']';
-        }
-    }
-
 }
\ No newline at end of file

Reply via email to