From 83d06408002da09600a035630ff134316b0fc26f Mon Sep 17 00:00:00 2001 From: Francesco Mangiacrapa Date: Fri, 31 Mar 2017 09:28:32 +0000 Subject: [PATCH] fixed QName for Metafata Field git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/data-catalogue/gcubedatacatalogue-metadata-discovery@146471 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../bean/jaxb/MetadataField.java | 12 ++++++++++ .../reader/MetadataFormatReader.java | 3 +++ .../TestJaxbMetadataMarshUnmarsh.java | 23 +++++++++++-------- 3 files changed, 29 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/gcube/datacatalogue/metadatadiscovery/bean/jaxb/MetadataField.java b/src/main/java/org/gcube/datacatalogue/metadatadiscovery/bean/jaxb/MetadataField.java index 5c62ea5..7d6d982 100644 --- a/src/main/java/org/gcube/datacatalogue/metadatadiscovery/bean/jaxb/MetadataField.java +++ b/src/main/java/org/gcube/datacatalogue/metadatadiscovery/bean/jaxb/MetadataField.java @@ -127,7 +127,18 @@ public class MetadataField implements Serializable{ */ public String getNamespaceFieldToCategoryReference() { + initNamespaceFieldToCategoryReference(); return namespaceFieldToCategoryReference; + + } + + + /** + * Inits the namespace field to category reference. + */ + private void initNamespaceFieldToCategoryReference(){ + if(namespaceFieldToCategoryReference==null && categoryRef!=null && !categoryRef.isEmpty()) + setNamespaceFieldToCategoryRef(); } @@ -142,6 +153,7 @@ public class MetadataField implements Serializable{ */ public String getCategoryFieldQName(){ + initNamespaceFieldToCategoryReference(); return namespaceFieldToCategoryReference==null?fieldName:namespaceFieldToCategoryReference+MetadataNamespace.Separator+fieldName; } diff --git a/src/main/java/org/gcube/datacatalogue/metadatadiscovery/reader/MetadataFormatReader.java b/src/main/java/org/gcube/datacatalogue/metadatadiscovery/reader/MetadataFormatReader.java index d801844..f679b4a 100644 --- a/src/main/java/org/gcube/datacatalogue/metadatadiscovery/reader/MetadataFormatReader.java +++ b/src/main/java/org/gcube/datacatalogue/metadatadiscovery/reader/MetadataFormatReader.java @@ -164,6 +164,7 @@ public class MetadataFormatReader { InputStream stream = new ByteArrayInputStream(metadataFormatSource.get(0).getBytes()); MetadataFormat mtdf = (MetadataFormat) jaxbUnmarshaller.unmarshal(stream); logger.debug("returning metadata format with medata type: "+mtdf.getMetadataType()); + return mtdf; }catch(Exception e){ @@ -172,6 +173,8 @@ public class MetadataFormatReader { } } + + /** * Gets the metadata fields from resource. * diff --git a/src/test/java/org/gcube/datacatalogue/metadatadiscovery/TestJaxbMetadataMarshUnmarsh.java b/src/test/java/org/gcube/datacatalogue/metadatadiscovery/TestJaxbMetadataMarshUnmarsh.java index 90f77ac..7fd855d 100644 --- a/src/test/java/org/gcube/datacatalogue/metadatadiscovery/TestJaxbMetadataMarshUnmarsh.java +++ b/src/test/java/org/gcube/datacatalogue/metadatadiscovery/TestJaxbMetadataMarshUnmarsh.java @@ -137,19 +137,24 @@ public class TestJaxbMetadataMarshUnmarsh { System.out.println("Metadata Format"); System.out.println(mtds); - System.out.println("Metadata Categories"); - if(mtds.getMetadataCategories()!=null){ - for (MetadataCategory cat : mtds.getMetadataCategories()) { - System.out.println(cat); - System.out.println(cat.getCategoryQName()); - } - } +// System.out.println("Metadata Categories"); +// if(mtds.getMetadataCategories()!=null){ +// for (MetadataCategory cat : mtds.getMetadataCategories()) { +// System.out.println(cat); +// System.out.println(cat.getCategoryQName()); +// } +// } System.out.println("\n\nMetadata Fields"); for (MetadataField field : mtds.getMetadataFields()) { System.out.println(field); - System.out.println(field.getGrouping()); - System.out.println(field.getTagging()); + System.out.println("Category Ref: "+field.getCategoryRef()); + System.out.println("Category Namespace: "+field.getNamespaceFieldToCategoryReference()); + System.out.println("Category CategoryField Q Name: "+field.getCategoryFieldQName()); + System.out.println("QName: "+field.getCategoryFieldQName()); + +// System.out.println(field.getGrouping()); +// System.out.println(field.getTagging()); } }