Skip to content
This repository has been archived by the owner on Mar 27, 2024. It is now read-only.

Commit

Permalink
Simplify PojoFromJson, use DataElementMetadata directly
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel Bluhm <bluhmdj@ornl.gov>
  • Loading branch information
dbluhm committed Oct 23, 2020
1 parent d71d6c4 commit fa187fb
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 200 deletions.
Expand Up @@ -20,11 +20,11 @@
import java.util.ArrayList;
import java.util.List;

import org.eclipse.ice.dev.annotations.processors.DataElementMetadata;
import org.eclipse.ice.dev.annotations.processors.DefaultFields;
import org.eclipse.ice.dev.annotations.processors.Fields;
import org.eclipse.ice.dev.annotations.processors.ImplementationWriter;
import org.eclipse.ice.dev.annotations.processors.InterfaceWriter;
import org.eclipse.ice.dev.annotations.processors.Types;

import com.beust.jcommander.JCommander;
import com.beust.jcommander.Parameter;
Expand Down Expand Up @@ -73,40 +73,26 @@ public class PojoFromJson {
*/
public static void handleInputJson(
InputStream is, Path destination
) throws JsonParseException, JsonMappingException, IOException {
) throws IOException {
// Parse outline from input stream
PojoOutline pojo = mapper.readValue(is, PojoOutline.class);
DataElementMetadata data = mapper.readValue(is, DataElementMetadata.class);

// Collect fields
Fields fields = new Fields();
Fields fields = data.getFields();
fields.collect(DefaultFields.get());
fields.collect(pojo.getFields());

// Write Interface
try (Writer elementInterface = Files.newBufferedWriter(
destination.resolve(pojo.getElement() + ".java")
destination.resolve(data.getName() + ".java")
)) {
InterfaceWriter.builder()
.packageName(pojo.getPackageName())
.interfaceName(pojo.getElement())
.fields(fields)
.types(new Types(fields.getInterfaceFields()))
.build()
.write(elementInterface);
new InterfaceWriter(data).write(elementInterface);
}

// Write implementation
try (Writer elementImpl = Files.newBufferedWriter(
destination.resolve(pojo.getImplementation() + ".java")
destination.resolve(data.getImplementationName() + ".java")
)) {
ImplementationWriter.builder()
.packageName(pojo.getPackageName())
.interfaceName(pojo.getElement())
.className(pojo.getImplementation())
.fields(fields)
.types(fields.getTypes())
.build()
.write(elementImpl);
new ImplementationWriter(data).write(elementImpl);
}
}

Expand Down

This file was deleted.

This file was deleted.

@@ -1,6 +1,6 @@
{
"package": "testpackage",
"element": "TestElement",
"name": "TestElement",
"fields": [{
"name": "test",
"type": "String"
Expand Down

0 comments on commit fa187fb

Please sign in to comment.