package ecologylab.bigsemantics.metadata; import java.net.MalformedURLException; import java.net.URL; import java.util.ArrayList; import java.util.Date; import org.junit.Test; import ecologylab.bigsemantics.generated.library.RepositoryMetadataTypesScope; import ecologylab.bigsemantics.metadata.builtins.CreativeAct; import ecologylab.bigsemantics.metadata.builtins.HtmlText; import ecologylab.bigsemantics.metadata.builtins.RichArtifact; import ecologylab.bigsemantics.metadata.builtins.person.author.IdeaMacheUser; import ecologylab.net.ParsedURL; import ecologylab.serialization.SIMPLTranslationException; import ecologylab.serialization.SimplTypesScope; import ecologylab.serialization.formatenums.StringFormat; public class AnnotationSerializeDeserialize { private static final SimplTypesScope META_METADATA_TRANSLATIONS = RepositoryMetadataTypesScope.get(); RichArtifact<HtmlText> annotation; public AnnotationSerializeDeserialize() throws MalformedURLException { annotation = new RichArtifact<HtmlText>(); HtmlText text = new HtmlText(); text.setText("annotation. booyah!"); text.setHtmlString("<p>annotation. <b>booyah!</b></p>"); annotation.setMedia(text); CreativeAct creativeAct = new CreativeAct(); creativeAct.setAction(2); IdeaMacheUser creator = new IdeaMacheUser(); creator.setTitle("andrew"); creator.setLocation(new ParsedURL(new URL("http://ecologylab.net/people/andrew"))); creativeAct.setCreator(creator); creativeAct.setTime(new Date()); ArrayList<CreativeAct> creativeActs = new ArrayList<CreativeAct>(); creativeActs.add(creativeAct); annotation.setCreativeActs(creativeActs); } @Test public void testAnnotationSerializeDeserialize() { try { StringBuilder serializedString = new StringBuilder(); SimplTypesScope.serialize(annotation, serializedString, StringFormat.JSON); System.out.println(serializedString); Object deserialized = META_METADATA_TRANSLATIONS.deserialize(serializedString, StringFormat.JSON); serializedString = new StringBuilder(); SimplTypesScope.serialize(deserialized, serializedString, StringFormat.JSON); System.out.println(serializedString); } catch (SIMPLTranslationException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void main(String[] args) { AnnotationSerializeDeserialize test; try { test = new AnnotationSerializeDeserialize(); test.testAnnotationSerializeDeserialize(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }