sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1605424 - in /sis/branches/JDK8/core/sis-metadata/src: main/java/org/apache/sis/internal/jaxb/metadata/ main/java/org/apache/sis/metadata/iso/citation/ main/java/org/apache/sis/metadata/iso/constraint/ main/java/org/apache/sis/metadata/iso...
Date Wed, 25 Jun 2014 14:36:39 GMT
Author: desruisseaux
Date: Wed Jun 25 14:36:38 2014
New Revision: 1605424

URL: http://svn.apache.org/r1605424
Log:
Integrated more SIS-94 patches (from Rémi) for update to ISO 19115:2014.

Added:
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_Party.java
      - copied, changed from r1605107, sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_ResponsibleParty.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AssociatedResource.java
      - copied, changed from r1605107, sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_BrowseGraphic.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AttributeGroup.java
      - copied, changed from r1605107, sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_FeatureTypeList.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java   (with props)
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java   (with props)
Modified:
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/AbstractParty.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/constraint/DefaultConstraints.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultBrowseGraphic.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java
    sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/AllMetadataTest.java

Copied: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_Party.java (from r1605107, sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_ResponsibleParty.java)
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_Party.java?p2=sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_Party.java&p1=sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_ResponsibleParty.java&r1=1605107&r2=1605424&rev=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_ResponsibleParty.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/CI_Party.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -17,8 +17,8 @@
 package org.apache.sis.internal.jaxb.metadata;
 
 import javax.xml.bind.annotation.XmlElementRef;
-import org.opengis.metadata.citation.ResponsibleParty;
-import org.apache.sis.metadata.iso.citation.DefaultResponsibleParty;
+import org.opengis.metadata.citation.Party;
+import org.apache.sis.metadata.iso.citation.AbstractParty;
 import org.apache.sis.internal.jaxb.gco.PropertyType;
 
 
@@ -26,19 +26,16 @@ import org.apache.sis.internal.jaxb.gco.
  * JAXB adapter mapping implementing class to the GeoAPI interface. See
  * package documentation for more information about JAXB and interface.
  *
- * @author  Cédric Briançon (Geomatys)
  * @author  Martin Desruisseaux (Geomatys)
- * @since   0.3 (derived from geotk-2.5)
- * @version 0.3
+ * @since   0.5
+ * @version 0.5
  * @module
  */
-public final class CI_ResponsibleParty extends
-        PropertyType<CI_ResponsibleParty, ResponsibleParty>
-{
+public final class CI_Party extends PropertyType<CI_Party, Party> {
     /**
      * Empty constructor for JAXB only.
      */
-    public CI_ResponsibleParty() {
+    public CI_Party() {
     }
 
     /**
@@ -46,42 +43,42 @@ public final class CI_ResponsibleParty e
      * This method is indirectly invoked by the private constructor
      * below, so it shall not depend on the state of this object.
      *
-     * @return {@code ResponsibleParty.class}
+     * @return {@code Party.class}
      */
     @Override
-    protected Class<ResponsibleParty> getBoundType() {
-        return ResponsibleParty.class;
+    protected Class<Party> getBoundType() {
+        return Party.class;
     }
 
     /**
      * Constructor for the {@link #wrap} method only.
      */
-    private CI_ResponsibleParty(final ResponsibleParty metadata) {
+    private CI_Party(final Party metadata) {
         super(metadata);
     }
 
     /**
      * Invoked by {@link PropertyType} at marshalling time for wrapping the given metadata value
-     * in a {@code <gmd:CI_ResponsibleParty>} XML element.
+     * in a {@code <gmd:CI_Party>} XML element.
      *
      * @param  metadata The metadata element to marshall.
      * @return A {@code PropertyType} wrapping the given the metadata element.
      */
     @Override
-    protected CI_ResponsibleParty wrap(final ResponsibleParty metadata) {
-        return new CI_ResponsibleParty(metadata);
+    protected CI_Party wrap(final Party metadata) {
+        return new CI_Party(metadata);
     }
 
     /**
      * Invoked by JAXB at marshalling time for getting the actual metadata to write
-     * inside the {@code <gmd:CI_ResponsibleParty>} XML element.
+     * inside the {@code <gmd:CI_Party>} XML element.
      * This is the value or a copy of the value given in argument to the {@code wrap} method.
      *
      * @return The metadata to be marshalled.
      */
     @XmlElementRef
-    public DefaultResponsibleParty getElement() {
-        return DefaultResponsibleParty.castOrCopy(metadata);
+    public AbstractParty getElement() {
+        return AbstractParty.castOrCopy(metadata);
     }
 
     /**
@@ -89,7 +86,7 @@ public final class CI_ResponsibleParty e
      *
      * @param metadata The unmarshalled metadata.
      */
-    public void setElement(final DefaultResponsibleParty metadata) {
+    public void setElement(final AbstractParty metadata) {
         this.metadata = metadata;
     }
 }

Copied: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AssociatedResource.java (from r1605107, sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_BrowseGraphic.java)
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AssociatedResource.java?p2=sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AssociatedResource.java&p1=sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_BrowseGraphic.java&r1=1605107&r2=1605424&rev=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_BrowseGraphic.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AssociatedResource.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -17,8 +17,8 @@
 package org.apache.sis.internal.jaxb.metadata;
 
 import javax.xml.bind.annotation.XmlElementRef;
-import org.opengis.metadata.identification.BrowseGraphic;
-import org.apache.sis.metadata.iso.identification.DefaultBrowseGraphic;
+import org.opengis.metadata.identification.AssociatedResource;
+import org.apache.sis.metadata.iso.identification.DefaultAssociatedResource;
 import org.apache.sis.internal.jaxb.gco.PropertyType;
 
 
@@ -26,17 +26,16 @@ import org.apache.sis.internal.jaxb.gco.
  * JAXB adapter mapping implementing class to the GeoAPI interface. See
  * package documentation for more information about JAXB and interface.
  *
- * @author  Cédric Briançon (Geomatys)
  * @author  Martin Desruisseaux (Geomatys)
- * @since   0.3 (derived from geotk-2.5)
- * @version 0.3
+ * @since   0.5
+ * @version 0.5
  * @module
  */
-public final class MD_BrowseGraphic extends PropertyType<MD_BrowseGraphic, BrowseGraphic> {
+public final class MD_AssociatedResource extends PropertyType<MD_AssociatedResource, AssociatedResource> {
     /**
      * Empty constructor for JAXB only.
      */
-    public MD_BrowseGraphic() {
+    public MD_AssociatedResource() {
     }
 
     /**
@@ -44,42 +43,42 @@ public final class MD_BrowseGraphic exte
      * This method is indirectly invoked by the private constructor
      * below, so it shall not depend on the state of this object.
      *
-     * @return {@code BrowseGraphic.class}
+     * @return {@code AssociatedResource.class}
      */
     @Override
-    protected Class<BrowseGraphic> getBoundType() {
-        return BrowseGraphic.class;
+    protected Class<AssociatedResource> getBoundType() {
+        return AssociatedResource.class;
     }
 
     /**
      * Constructor for the {@link #wrap} method only.
      */
-    private MD_BrowseGraphic(final BrowseGraphic metadata) {
+    private MD_AssociatedResource(final AssociatedResource metadata) {
         super(metadata);
     }
 
     /**
      * Invoked by {@link PropertyType} at marshalling time for wrapping the given metadata value
-     * in a {@code <gmd:MD_BrowseGraphic>} XML element.
+     * in a {@code <gmd:MD_AssociatedResource>} XML element.
      *
      * @param  metadata The metadata element to marshall.
      * @return A {@code PropertyType} wrapping the given the metadata element.
      */
     @Override
-    protected MD_BrowseGraphic wrap(final BrowseGraphic metadata) {
-        return new MD_BrowseGraphic(metadata);
+    protected MD_AssociatedResource wrap(final AssociatedResource metadata) {
+        return new MD_AssociatedResource(metadata);
     }
 
     /**
      * Invoked by JAXB at marshalling time for getting the actual metadata to write
-     * inside the {@code <gmd:MD_BrowseGraphic>} XML element.
+     * inside the {@code <gmd:MD_AssociatedResource>} XML element.
      * This is the value or a copy of the value given in argument to the {@code wrap} method.
      *
      * @return The metadata to be marshalled.
      */
     @XmlElementRef
-    public DefaultBrowseGraphic getElement() {
-        return DefaultBrowseGraphic.castOrCopy(metadata);
+    public DefaultAssociatedResource getElement() {
+        return DefaultAssociatedResource.castOrCopy(metadata);
     }
 
     /**
@@ -87,7 +86,7 @@ public final class MD_BrowseGraphic exte
      *
      * @param metadata The unmarshalled metadata.
      */
-    public void setElement(final DefaultBrowseGraphic metadata) {
+    public void setElement(final DefaultAssociatedResource metadata) {
         this.metadata = metadata;
     }
 }

Copied: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AttributeGroup.java (from r1605107, sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_FeatureTypeList.java)
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AttributeGroup.java?p2=sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AttributeGroup.java&p1=sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_FeatureTypeList.java&r1=1605107&r2=1605424&rev=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_FeatureTypeList.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/MD_AttributeGroup.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -17,8 +17,8 @@
 package org.apache.sis.internal.jaxb.metadata;
 
 import javax.xml.bind.annotation.XmlElementRef;
-import org.opengis.metadata.FeatureTypeList;
-import org.apache.sis.metadata.iso.DefaultFeatureTypeList;
+import org.opengis.metadata.content.AttributeGroup;
+import org.apache.sis.metadata.iso.content.DefaultAttributeGroup;
 import org.apache.sis.internal.jaxb.gco.PropertyType;
 
 
@@ -26,17 +26,16 @@ import org.apache.sis.internal.jaxb.gco.
  * JAXB adapter mapping implementing class to the GeoAPI interface. See
  * package documentation for more information about JAXB and interface.
  *
- * @author  Cédric Briançon (Geomatys)
  * @author  Martin Desruisseaux (Geomatys)
- * @since   0.3 (derived from geotk-2.5)
- * @version 0.3
+ * @since   0.5
+ * @version 0.5
  * @module
  */
-public final class MD_FeatureTypeList extends PropertyType<MD_FeatureTypeList, FeatureTypeList> {
+public final class MD_AttributeGroup extends PropertyType<MD_AttributeGroup, AttributeGroup> {
     /**
      * Empty constructor for JAXB only.
      */
-    public MD_FeatureTypeList() {
+    public MD_AttributeGroup() {
     }
 
     /**
@@ -44,42 +43,42 @@ public final class MD_FeatureTypeList ex
      * This method is indirectly invoked by the private constructor
      * below, so it shall not depend on the state of this object.
      *
-     * @return {@code FeatureTypeList.class}
+     * @return {@code AttributeGroup.class}
      */
     @Override
-    protected Class<FeatureTypeList> getBoundType() {
-        return FeatureTypeList.class;
+    protected Class<AttributeGroup> getBoundType() {
+        return AttributeGroup.class;
     }
 
     /**
      * Constructor for the {@link #wrap} method only.
      */
-    private MD_FeatureTypeList(final FeatureTypeList metadata) {
+    private MD_AttributeGroup(final AttributeGroup metadata) {
         super(metadata);
     }
 
     /**
      * Invoked by {@link PropertyType} at marshalling time for wrapping the given metadata value
-     * in a {@code <gmd:MD_FeatureTypeList>} XML element.
+     * in a {@code <gmd:MD_AttributeGroup>} XML element.
      *
      * @param  metadata The metadata element to marshall.
      * @return A {@code PropertyType} wrapping the given the metadata element.
      */
     @Override
-    protected MD_FeatureTypeList wrap(final FeatureTypeList metadata) {
-        return new MD_FeatureTypeList(metadata);
+    protected MD_AttributeGroup wrap(final AttributeGroup metadata) {
+        return new MD_AttributeGroup(metadata);
     }
 
     /**
      * Invoked by JAXB at marshalling time for getting the actual metadata to write
-     * inside the {@code <gmd:MD_FeatureTypeList>} XML element.
+     * inside the {@code <gmd:MD_AttributeGroup>} XML element.
      * This is the value or a copy of the value given in argument to the {@code wrap} method.
      *
      * @return The metadata to be marshalled.
      */
     @XmlElementRef
-    public DefaultFeatureTypeList getElement() {
-        return DefaultFeatureTypeList.castOrCopy(metadata);
+    public DefaultAttributeGroup getElement() {
+        return DefaultAttributeGroup.castOrCopy(metadata);
     }
 
     /**
@@ -87,7 +86,7 @@ public final class MD_FeatureTypeList ex
      *
      * @param metadata The unmarshalled metadata.
      */
-    public void setElement(final DefaultFeatureTypeList metadata) {
+    public void setElement(final DefaultAttributeGroup metadata) {
         this.metadata = metadata;
     }
 }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/AbstractParty.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/AbstractParty.java?rev=1605424&r1=1605423&r2=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/AbstractParty.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/AbstractParty.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -20,10 +20,11 @@ import java.util.Collection;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
-import org.apache.sis.metadata.iso.ISOMetadata;
+import org.opengis.util.InternationalString;
 import org.opengis.metadata.citation.Contact;
 import org.opengis.metadata.citation.Party;
-import org.opengis.util.InternationalString;
+import org.apache.sis.metadata.iso.ISOMetadata;
+import org.apache.sis.util.iso.Types;
 
 
 /**
@@ -35,7 +36,7 @@ import org.opengis.util.InternationalStr
  * @version 0.5
  * @module
  */
-@XmlType(name = "CI_Party_Type", propOrder = {
+@XmlType(name = "AbstractCI_Party_Type", propOrder = {
 /// "name",
 /// "contactInfo"
 })
@@ -68,8 +69,8 @@ public class AbstractParty extends ISOMe
      * @param name        Name of the party, or {@code null} if none.
      * @param contactInfo Contact information for the party, or {@code null} if none.
      */
-    public AbstractParty(final InternationalString name, final Contact contactInfo) {
-        this.name        = name;
+    public AbstractParty(final CharSequence name, final Contact contactInfo) {
+        this.name        = Types.toInternationalString(name);
         this.contactInfo = singleton(contactInfo, Contact.class);
     }
 
@@ -137,9 +138,9 @@ public class AbstractParty extends ISOMe
     }
 
     /**
-     * Returns the contact information for the party, or {@code null} if none.
+     * Returns the contact information for the party.
      *
-     * @return Contact information for the party, or {@code null} if none.
+     * @return Contact information for the party.
      */
     @Override
 /// @XmlElement(name = "contactInfo")
@@ -152,7 +153,7 @@ public class AbstractParty extends ISOMe
      *
      * @param newValues The new contact information for the party.
      */
-    public void setContactInfo(final Collection< ? extends Contact> newValues) {
+    public void setContactInfo(final Collection<? extends Contact> newValues) {
         contactInfo = writeCollection(newValues, contactInfo, Contact.class);
     }
 }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/constraint/DefaultConstraints.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/constraint/DefaultConstraints.java?rev=1605424&r1=1605423&r2=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/constraint/DefaultConstraints.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/constraint/DefaultConstraints.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -22,9 +22,14 @@ import javax.xml.bind.annotation.XmlSeeA
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import org.opengis.util.InternationalString;
+import org.opengis.metadata.citation.Citation;
+import org.opengis.metadata.citation.Responsibility;
+import org.opengis.metadata.constraint.Releasability;
+import org.opengis.metadata.identification.BrowseGraphic;
 import org.opengis.metadata.constraint.Constraints;
 import org.opengis.metadata.constraint.LegalConstraints;
 import org.opengis.metadata.constraint.SecurityConstraints;
+import org.opengis.metadata.quality.Scope;
 import org.apache.sis.metadata.iso.ISOMetadata;
 import org.apache.sis.util.iso.Types;
 
@@ -35,11 +40,19 @@ import org.apache.sis.util.iso.Types;
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @author  Touraïvane (IRD)
  * @author  Cédric Briançon (Geomatys)
+ * @author  Remi Marechal (Geomatys)
  * @since   0.3 (derived from geotk-2.1)
- * @version 0.3
+ * @version 0.5
  * @module
  */
-@XmlType(name = "MD_Constraints_Type")
+@XmlType(name = "MD_Constraints_Type" /*, propOrder = {
+    "useLimitation",
+    "constraintApplicationScope",
+    "graphic",
+    "reference",
+    "releasability",
+    "responsibleParty"
+} */)
 @XmlRootElement(name = "MD_Constraints")
 @XmlSeeAlso({
     DefaultLegalConstraints.class,
@@ -58,6 +71,32 @@ public class DefaultConstraints extends 
     private Collection<InternationalString> useLimitations;
 
     /**
+     * Spatial and / or temporal extent and or level of the application of the constraints restrictions.
+     */
+    private Collection<Scope> constraintApplicationScopes;
+
+    /**
+     * Graphic / symbol indicating the constraint.
+     */
+    private Collection<BrowseGraphic> graphics;
+
+    /**
+     * Citation for the limitation of constraint.
+     * Example: "copyright statement, license agreement, etc."
+     */
+    private Collection<Citation> references;
+
+    /**
+     * Citation for the limitation of constraint.
+     */
+    private Releasability releasability;
+
+    /**
+     * Party responsible for the resource constraints.
+     */
+    private Collection<Responsibility> responsibleParties;
+
+    /**
      * Constructs an initially empty constraints.
      */
     public DefaultConstraints() {
@@ -84,7 +123,12 @@ public class DefaultConstraints extends 
     public DefaultConstraints(final Constraints object) {
         super(object);
         if (object != null) {
-            useLimitations = copyCollection(object.getUseLimitations(), InternationalString.class);
+            useLimitations              = copyCollection(object.getUseLimitations(), InternationalString.class);
+///         constraintApplicationScopes = copyCollection(object.getConstraintApplicationScope(), Scope.class);
+///         graphics                    = copyCollection(object.getGraphic(), BrowseGraphic.class);
+///         references                  = copyCollection(object.getReference(), Citation.class);
+///         releasability               = object.getReleasability();
+///         responsibleParties          = copyCollection(object.getResponsibleParty(), Responsibility.class);
         }
     }
 
@@ -143,7 +187,130 @@ public class DefaultConstraints extends 
      *
      * @param newValues The new use limitations.
      */
-    public void setUseLimitations(final Collection<? extends InternationalString> newValues) {
+    public void setUseLimitations(final Collection< ? extends InternationalString> newValues) {
         useLimitations = writeCollection(newValues, useLimitations, InternationalString.class);
     }
+
+    /**
+     * Returns the spatial and / or temporal extents and or levels of the application
+     * of the constraints restrictions.
+     *
+     * @return Spatial and / or temporal extents.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "constraintApplicationScope")
+    public Collection<Scope> getConstraintApplicationScopes() {
+        return constraintApplicationScopes = nonNullCollection(constraintApplicationScopes, Scope.class);
+    }
+
+    /**
+     * Sets the spatial and / or temporal extents and or levels of the application of the constraints restrictions.
+     *
+     * @param newValues The new spatial and / or temporal extents.
+     *
+     * @since 0.5
+     */
+    public void setConstraintApplicationScopes(final Collection<? extends Scope> newValues) {
+        constraintApplicationScopes = writeCollection(newValues, constraintApplicationScopes, Scope.class);
+    }
+
+    /**
+     * Returns the graphics / symbols indicating the constraint.
+     *
+     * @return The graphics / symbols indicating the constraint.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "graphic")
+    public Collection<BrowseGraphic> getGraphics() {
+        return graphics = nonNullCollection(graphics, BrowseGraphic.class);
+    }
+
+    /**
+     * Sets the new graphics / symbols indicating the constraint.
+     *
+     * @param newValues the new graphics / symbols indicating the constraint.
+     *
+     * @since 0.5
+     */
+    public void setGraphic(final Collection<? extends BrowseGraphic> newValues) {
+        graphics = writeCollection(newValues, graphics, BrowseGraphic.class);
+    }
+
+    /**
+     * Returns citations for the limitation of constraint.
+     * Example: "copyright statement, license agreement, etc."
+     *
+     * @return Citations for the limitation of constraint.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "reference")
+    public Collection<Citation> getReference() {
+        return references = nonNullCollection(references, Citation.class);
+    }
+
+    /**
+     * Sets the citations for the limitation of constraint.
+     *
+     * @param newValues The new citation for the limitation of constraint.
+     *
+     * @since 0.5
+     */
+    public void setReference(Collection<? extends Citation> newValues) {
+        references = writeCollection(newValues, references, Citation.class);
+    }
+
+    /**
+     * Returns information concerning the parties to whom the resource can or cannot be released, or {@code null} if none.
+     *
+     * @return Information concerning the parties to whom the resource, or {@code null} if none.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "releasability")
+    public Releasability getReleasability() {
+        return releasability;
+    }
+
+    /**
+     * Sets the information concerning the parties to whom the resource.
+     *
+     * @param newValue The new information concerning the parties to whom the resource.
+     *
+     * @since 0.5
+     */
+    public void setReleasability(final Releasability newValue) {
+        checkWritePermission();
+        releasability = newValue;
+    }
+
+    /**
+     * Returns the parties responsible for the resource constraints.
+     *
+     * @return Parties responsible for the resource constraints.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "responsibleParty")
+    public Collection<Responsibility> getResponsibleParties() {
+        return responsibleParties = nonNullCollection(responsibleParties, Responsibility.class);
+    }
+
+    /**
+     * Sets the parties responsible for the resource constraints.
+     *
+     * @param newValues The new parties responsible for the resource constraints.
+     *
+     * @since 0.5
+     */
+    public void setResponsibleParties(final Collection<? extends Responsibility> newValues) {
+        responsibleParties = writeCollection(newValues, responsibleParties, Responsibility.class);
+    }
 }

Added: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java?rev=1605424&view=auto
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java (added)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -0,0 +1,147 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.content;
+
+import java.util.Collection;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+import org.opengis.metadata.content.AttributeGroup;
+import org.opengis.metadata.content.CoverageContentType;
+import org.opengis.metadata.content.RangeDimension;
+import org.apache.sis.metadata.iso.ISOMetadata;
+
+
+/**
+ * Information about content type for groups of attributes for a specific
+ * {@linkplain DefaultRangeDimension range dimension}.
+ *
+ * @author  Remi Marechal (Geomatys)
+ * @author  Martin Desruisseaux (Geomatys)
+ * @since   0.5
+ * @version 0.5
+ * @module
+ */
+@XmlType(name = "MD_AttributeGroup_Type", propOrder = {
+/// "contentType",
+/// "groupAttribute"
+})
+@XmlRootElement(name = "MD_AttributeGroup")
+public class DefaultAttributeGroup extends ISOMetadata implements AttributeGroup {
+    /**
+     * Serial number for compatibility with different versions.
+     */
+    private static final long serialVersionUID = -2198484393626051875L;
+
+    /**
+     * Type of information represented by the value(s).
+     */
+    private Collection<CoverageContentType> contentTypes;
+
+    /**
+     * Content type for attributes groups for a {@link RangeDimension}.
+     */
+    private Collection<RangeDimension> groupAttributes;
+
+    /**
+     * Constructs an initially empty attribute group.
+     */
+    public DefaultAttributeGroup(){
+    }
+
+    /**
+     * Constructs a new instance initialized with the values from the specified metadata object.
+     * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the
+     * given object are not recursively copied.
+     *
+     * @param object The metadata to copy values from, or {@code null} if none.
+     *
+     * @see #castOrCopy(AttributeGroup)
+     */
+    public DefaultAttributeGroup(final AttributeGroup object) {
+        super(object);
+        if (object != null) {
+            contentTypes    = copyCollection(object.getContentTypes(), CoverageContentType.class);
+            groupAttributes = copyCollection(object.getGroupAttributes(), RangeDimension.class);
+        }
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the values of the given arbitrary implementation.
+     * This method performs the first applicable action in the following choices:
+     *
+     * <ul>
+     *   <li>If the given object is {@code null}, then this method returns {@code null}.</li>
+     *   <li>Otherwise if the given object is already an instance of
+     *       {@code DefaultAttributeGroup}, then it is returned unchanged.</li>
+     *   <li>Otherwise a new {@code DefaultAttributeGroup} instance is created using the
+     *       {@linkplain #DefaultAttributeGroup(AttributeGroup) copy constructor}
+     *       and returned. Note that this is a <cite>shallow</cite> copy operation, since the other
+     *       metadata contained in the given object are not recursively copied.</li>
+     * </ul>
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultAttributeGroup castOrCopy(final AttributeGroup object) {
+        if (object == null || object instanceof DefaultAttributeGroup) {
+            return (DefaultAttributeGroup) object;
+        }
+        return new DefaultAttributeGroup(object);
+    }
+
+    /**
+     * Returns the types of information represented by the value(s).
+     *
+     * @return The types of information represented by the value(s).
+     */
+    @Override
+/// @XmlElement(name = "contentType", required = true)
+    public Collection<CoverageContentType> getContentTypes() {
+        return contentTypes = nonNullCollection(contentTypes, CoverageContentType.class);
+    }
+
+    /**
+     * Sets the types of information represented by the value(s).
+     *
+     * @param newValues The new types of information.
+     */
+    public void setContentTypes(final Collection<? extends CoverageContentType> newValues) {
+        contentTypes = writeCollection(newValues, contentTypes, CoverageContentType.class);
+    }
+
+    /**
+     * Returns the content types for attributes groups for a {@code RangeDimension}, or {@code null} if none.
+     *
+     * @return The content types for attributes groups for a {@code RangeDimension}, or {@code null} if none.
+     */
+    @Override
+/// @XmlElement(name = "groupAttribute")
+    public Collection<RangeDimension> getGroupAttributes() {
+        return groupAttributes = nonNullCollection(groupAttributes, RangeDimension.class);
+    }
+
+    /**
+     * Sets the content types for attributes groups for a {@code RangeDimension}.
+     *
+     * @param newValues The new content types for attributes groups for a {@code RangeDimension}.
+     */
+    public void setGroupAttributes(final Collection<? extends RangeDimension> newValues) {
+        groupAttributes = writeCollection(newValues, groupAttributes, RangeDimension.class);
+    }
+}

Propchange: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultAttributeGroup.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java?rev=1605424&view=auto
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java (added)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -0,0 +1,166 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.content;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+import org.opengis.util.GenericName;
+import org.opengis.metadata.content.FeatureTypeInfo;
+import org.apache.sis.measure.ValueRange;
+import org.apache.sis.metadata.iso.ISOMetadata;
+import org.apache.sis.util.ArgumentChecks;
+
+
+/**
+ * Information about the occurring feature type.
+ *
+ * @author  Remi Marechal (Geomatys)
+ * @author  Martin Desruisseaux (Geomatys)
+ * @since   0.5
+ * @version 0.5
+ * @module
+ */
+@XmlType(name = "MD_FeatureTypeInfo", propOrder = {
+/// "featureTypeName",
+/// "featureInstanceCount"
+})
+@XmlRootElement(name = "MD_FeatureTypeInfo")
+public class DefaultFeatureTypeInfo extends ISOMetadata implements FeatureTypeInfo {
+    /**
+     * Serial number for compatibility with different versions.
+     */
+    private static final long serialVersionUID = -4103901642915981422L;
+
+    /**
+     * Name of the feature type.
+     */
+    private GenericName featureTypeName;
+
+    /**
+     * Number of occurrence of feature instances for this feature types.
+     */
+    private Integer featureInstanceCount;
+
+    /**
+     * Constructs an initially empty feature type info.
+     */
+    public DefaultFeatureTypeInfo() {
+    }
+
+    /**
+     * Constructs a feature type info initialized to the specified value.
+     *
+     * @param featureTypeName Name of the feature type.
+     * @param featureInstanceCount Number of occurrence of feature instances for this feature types, or {@code null}.
+     */
+    public DefaultFeatureTypeInfo(final GenericName featureTypeName, final Integer featureInstanceCount) {
+        if (featureInstanceCount != null) {
+            ArgumentChecks.ensurePositive("featureInstanceCount", featureInstanceCount);
+        }
+        this.featureTypeName      = featureTypeName;
+        this.featureInstanceCount = featureInstanceCount;
+    }
+
+    /**
+     * Constructs a new instance initialized with the values from the specified metadata object.
+     * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the
+     * given object are not recursively copied.
+     *
+     * @param object The metadata to copy values from, or {@code null} if none.
+     *
+     * @see #castOrCopy(FeatureTypeInfo)
+     */
+    public DefaultFeatureTypeInfo(final FeatureTypeInfo object) {
+        super(object);
+        if (object != null) {
+            featureTypeName      = object.getFeatureTypeName();
+            featureInstanceCount = object.getFeatureInstanceCount();
+        }
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the values of the given arbitrary implementation.
+     * This method performs the first applicable action in the following choices:
+     *
+     * <ul>
+     *   <li>If the given object is {@code null}, then this method returns {@code null}.</li>
+     *   <li>Otherwise if the given object is already an instance of
+     *       {@code DefaultFeatureTypeInfo}, then it is returned unchanged.</li>
+     *   <li>Otherwise a new {@code DefaultFeatureTypeInfo} instance is created using the
+     *       {@linkplain #DefaultFeatureTypeInfo(FeatureTypeInfo) copy constructor}
+     *       and returned. Note that this is a <cite>shallow</cite> copy operation, since the other
+     *       metadata contained in the given object are not recursively copied.</li>
+     * </ul>
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultFeatureTypeInfo castOrCopy(final FeatureTypeInfo object) {
+        if (object == null || object instanceof DefaultFeatureTypeInfo) {
+            return (DefaultFeatureTypeInfo) object;
+        }
+        return new DefaultFeatureTypeInfo(object);
+    }
+
+    /**
+     * Returns the name of the feature type.
+     *
+     * @return Name of the feature type.
+     */
+    @Override
+/// @XmlElement(name = "featureTypeName", required = true)
+    public GenericName getFeatureTypeName() {
+        return featureTypeName;
+    }
+
+    /**
+     * Sets the name of the feature type.
+     *
+     * @param newValue The new name.
+     */
+    public void setFeatureTypeName(final GenericName newValue) {
+        checkWritePermission();
+        featureTypeName = newValue;
+    }
+
+    /**
+     * Returns the number of occurrence of feature instances for this feature types, or {@code null} if none.
+     *
+     * @return The number of occurrence of feature instances for this feature types, or {@code null} if none.
+     */
+    @Override
+    @ValueRange(minimum = 1)
+/// @XmlElement(name = "featureInstanceCount")
+    public Integer getFeatureInstanceCount() {
+        return featureInstanceCount;
+    }
+
+    /**
+     * Set a new number of occurrence of feature instances for this feature types.
+     *
+     * @param newValue the new number of occurrence.
+     */
+    public void setFeatureInstanceCount(final Integer newValue) {
+        checkWritePermission();
+        if (newValue != null) {
+            ArgumentChecks.ensurePositive("featureInstanceCount", newValue);
+        }
+        featureInstanceCount = newValue;
+    }
+}

Propchange: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureTypeInfo.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java?rev=1605424&r1=1605423&r2=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -19,11 +19,11 @@ package org.apache.sis.metadata.iso.iden
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
-import org.apache.sis.metadata.iso.ISOMetadata;
 import org.opengis.metadata.citation.Citation;
 import org.opengis.metadata.identification.AssociatedResource;
 import org.opengis.metadata.identification.AssociationType;
 import org.opengis.metadata.identification.InitiativeType;
+import org.apache.sis.metadata.iso.ISOMetadata;
 
 
 /**
@@ -35,7 +35,7 @@ import org.opengis.metadata.identificati
  * @version 0.5
  * @module
  */
-@XmlType(name = "MD_AssociatedResource", propOrder = {
+@XmlType(name = "MD_AssociatedResource_Type", propOrder = {
 /// "name",
 /// "associationType",
 /// "initiativeType",

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultBrowseGraphic.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultBrowseGraphic.java?rev=1605424&r1=1605423&r2=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultBrowseGraphic.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultBrowseGraphic.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -17,11 +17,14 @@
 package org.apache.sis.metadata.iso.identification;
 
 import java.net.URI;
+import java.util.Collection;
 import javax.xml.bind.annotation.XmlType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.opengis.util.InternationalString;
+import org.opengis.metadata.citation.OnlineResource;
+import org.opengis.metadata.constraint.Constraints;
 import org.opengis.metadata.identification.BrowseGraphic;
 import org.apache.sis.metadata.iso.ISOMetadata;
 import org.apache.sis.internal.jaxb.gmx.MimeFileTypeAdapter;
@@ -33,8 +36,9 @@ import org.apache.sis.internal.jaxb.gmx.
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @author  Touraïvane (IRD)
  * @author  Cédric Briançon (Geomatys)
+ * @author  Remi Marechal (Geomatys)
  * @since   0.3 (derived from geotk-2.1)
- * @version 0.4
+ * @version 0.5
  * @module
  */
 @XmlType(name = "MD_BrowseGraphic_Type", propOrder = {
@@ -66,6 +70,16 @@ public class DefaultBrowseGraphic extend
     private String fileType;
 
     /**
+     * Restrictions on access and/or of browse graphic.
+     */
+    private Collection<Constraints> imageConstraints;
+
+    /**
+     * Links to browse graphic.
+     */
+    private Collection<OnlineResource> linkages;
+
+    /**
      * Constructs an initially empty browse graphic.
      */
     public DefaultBrowseGraphic() {
@@ -92,9 +106,11 @@ public class DefaultBrowseGraphic extend
     public DefaultBrowseGraphic(final BrowseGraphic object) {
         super(object);
         if (object != null) {
-            fileName        = object.getFileName();
-            fileDescription = object.getFileDescription();
-            fileType        = object.getFileType();
+            fileName         = object.getFileName();
+            fileDescription  = object.getFileDescription();
+            fileType         = object.getFileType();
+///         imageConstraints = object.getImageConstraints();
+///         linkage          = object.getLinkage();
         }
     }
 
@@ -187,4 +203,52 @@ public class DefaultBrowseGraphic extend
         checkWritePermission();
         fileType = newValue;
     }
+
+    /**
+     * Returns the restrictions on access and / or use of browse graphic.
+     *
+     * @return Restrictions on access and / or use of browse graphic.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "imageConstraints")
+    public Collection<Constraints> getImageConstraints() {
+        return imageConstraints = nonNullCollection(imageConstraints, Constraints.class);
+    }
+
+    /**
+     * Sets the restrictions on access and / or use of browse graphic.
+     *
+     * @param newValues The new restrictions on access and / or use of browse graphic.
+     *
+     * @since 0.5
+     */
+    public void setImageConstraints(final Collection<? extends Constraints> newValues) {
+        imageConstraints = writeCollection(newValues, imageConstraints, Constraints.class);
+    }
+
+    /**
+     * Return the links to browse graphic.
+     *
+     * @return The links to browse graphic.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "linkage")
+    public Collection<OnlineResource> getLinkages() {
+        return linkages = nonNullCollection(linkages, OnlineResource.class);
+    }
+
+    /**
+     * Sets the links to browse graphic.
+     *
+     * @param newValues The new links to browse graphic.
+     *
+     * @since 0.5
+     */
+    public void setLinkages(final Collection<? extends OnlineResource> newValues) {
+        linkages = writeCollection(newValues, linkages, OnlineResource.class);
+    }
 }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java?rev=1605424&r1=1605423&r2=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -20,6 +20,7 @@ import javax.xml.bind.annotation.XmlType
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import org.opengis.util.InternationalString;
 import org.opengis.metadata.spatial.Dimension;
 import org.opengis.metadata.spatial.DimensionNameType;
 import org.apache.sis.internal.jaxb.gco.GO_Measure;
@@ -33,14 +34,17 @@ import org.apache.sis.measure.ValueRange
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @author  Touraïvane (IRD)
  * @author  Cédric Briançon (Geomatys)
+ * @author  Remi Marechal (Geomatys)
  * @since   0.3 (derived from geotk-2.1)
- * @version 0.3
+ * @version 0.5
  * @module
  */
 @XmlType(name = "MD_Dimension_Type", propOrder = {
     "dimensionName",
     "dimensionSize",
-    "resolution"
+    "resolution",
+/// "dimensionTitle",
+/// "dimensionDescription"
 })
 @XmlRootElement(name = "MD_Dimension")
 public class DefaultDimension extends ISOMetadata implements Dimension {
@@ -65,6 +69,18 @@ public class DefaultDimension extends IS
     private Double resolution;
 
     /**
+     * Enhancement/ modifier of the dimension name.
+     * Example: dimensionName = "column",
+     *          dimensionTitle = "longitude"
+     */
+    private InternationalString dimensionTitle;
+
+    /**
+     * Description of the axis.
+     */
+    private InternationalString dimensionDescription;
+
+    /**
      * Constructs an initially empty dimension.
      */
     public DefaultDimension() {
@@ -93,9 +109,11 @@ public class DefaultDimension extends IS
     public DefaultDimension(final Dimension object) {
         super(object);
         if (object != null) {
-            dimensionName = object.getDimensionName();
-            dimensionSize = object.getDimensionSize();
-            resolution    = object.getResolution();
+            dimensionName        = object.getDimensionName();
+            dimensionSize        = object.getDimensionSize();
+            resolution           = object.getResolution();
+///         dimensionTitle       = object.getDimensionTitle();
+///         dimensionDescription = object.getDimensionDescription();
         }
     }
 
@@ -189,4 +207,57 @@ public class DefaultDimension extends IS
         checkWritePermission();
         resolution = newValue;
     }
+
+    /**
+     * Returns the enhancement/ modifier of the dimension name.
+     *
+     * <div class="note"><b>Example:</b>
+     * dimensionName = "column", dimensionTitle = "longitude"</div>
+     *
+     * @return The enhancement/ modifier of the dimension name.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "dimensionTitle")
+    public InternationalString getDimensionTitle() {
+        return dimensionTitle;
+    }
+
+    /**
+     * Sets the enhancement/ modifier of the dimension name.
+     *
+     * @param newValue The new enhancement/ modifier of the dimension name.
+     *
+     * @since 0.5
+     */
+    public void setDimensionTitle(final InternationalString newValue) {
+        checkWritePermission();
+        dimensionTitle = newValue;
+    }
+
+    /**
+     * Return the axis dimension description.
+     *
+     * @return The axis dimension description.
+     *
+     * @since 0.5
+     */
+/// @Override
+/// @XmlElement(name = "dimensionDescription")
+    public InternationalString getDimensionDescription() {
+        return dimensionDescription;
+    }
+
+    /**
+     * Sets the axis dimension description.
+     *
+     * @param newValue The new axis dimension description.
+     *
+     * @since 0.5
+     */
+    public void setDimensionDescription(final InternationalString newValue) {
+        checkWritePermission();
+        dimensionDescription = newValue;
+    }
 }

Modified: sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/AllMetadataTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/AllMetadataTest.java?rev=1605424&r1=1605423&r2=1605424&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/AllMetadataTest.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/AllMetadataTest.java [UTF-8] Wed Jun 25 14:36:38 2014
@@ -88,6 +88,7 @@ public final strictfp class AllMetadataT
             org.opengis.metadata.citation.DateType.class,
             org.opengis.metadata.citation.OnLineFunction.class,
             org.opengis.metadata.citation.OnlineResource.class,
+            org.opengis.metadata.citation.Party.class,
             org.opengis.metadata.citation.PresentationForm.class,
             org.opengis.metadata.citation.ResponsibleParty.class,
             org.opengis.metadata.citation.Role.class,
@@ -98,6 +99,7 @@ public final strictfp class AllMetadataT
             org.opengis.metadata.constraint.LegalConstraints.class,
             org.opengis.metadata.constraint.Restriction.class,
             org.opengis.metadata.constraint.SecurityConstraints.class,
+            org.opengis.metadata.content.AttributeGroup.class,
             org.opengis.metadata.content.Band.class,
             org.opengis.metadata.content.BandDefinition.class,
             org.opengis.metadata.content.ContentInformation.class,
@@ -128,6 +130,7 @@ public final strictfp class AllMetadataT
             org.opengis.metadata.extent.TemporalExtent.class,
             org.opengis.metadata.extent.VerticalExtent.class,
             org.opengis.metadata.identification.AggregateInformation.class,
+            org.opengis.metadata.identification.AssociatedResource.class,
             org.opengis.metadata.identification.AssociationType.class,
             org.opengis.metadata.identification.BrowseGraphic.class,
             org.opengis.metadata.identification.CharacterSet.class,



Mime
View raw message