sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1634463 - in /sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso: ./ citation/ content/ distribution/ extent/ identification/ lineage/ maintenance/ quality/
Date Mon, 27 Oct 2014 07:36:36 GMT
Author: desruisseaux
Date: Mon Oct 27 07:36:36 2014
New Revision: 1634463

URL: http://svn.apache.org/r1634463
Log:
Consolidation of deprecated method implementations:
- Setting a null value should remove the wrapper object if the later became empty.
- The deprecated getter methods invoke only the non-deprecated getter replacement.
- The deprecated setter methods invoke only the non-deprecated setter replacement (unless the invoked methods are final).
This means that if a deprecated setter methods need the old value, it will read the field directly.
The intend is to avoid surprising code paths for user who override some methods.

Modified:
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultContact.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultTelephone.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultCoverageDescription.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureCatalogueDescription.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultRangeDimension.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDigitalTransferOptions.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultFormat.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicBoundingBox.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicDescription.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultServiceIdentification.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java
    sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -85,6 +85,7 @@ public class DefaultExtendedElementInfor
     /**
      * Short form suitable for use in an implementation method such as XML or SGML.
      */
+    @Deprecated
     private String shortName;
 
     /**
@@ -92,6 +93,7 @@ public class DefaultExtendedElementInfor
      * Non-null only if the {@linkplain #getDataType() data type}
      * is {@linkplain Datatype#CODE_LIST_ELEMENT code list element}.
      */
+    @Deprecated
     private Integer domainCode;
 
     /**
@@ -504,9 +506,9 @@ public class DefaultExtendedElementInfor
     }
 
     /**
-     * Reason for creating the extended element.
+     * Returns the reason for creating the extended element.
      *
-     * @return Reason for creating the extended element.
+     * @return Reason for creating the extended element, or {@code null}.
      *
      * @since 0.5
      */

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -338,6 +338,14 @@ public class DefaultMetadata extends ISO
         return new DefaultMetadata(object);
     }
 
+    /*
+     * Note about deprecated methods implementation: as a general guideline in our metadata implementation,
+     * the deprecated getter methods invoke only the non-deprecated getter replacement, and the deprecated
+     * setter methods invoke only the non-deprecated setter replacement (unless the invoked methods are final).
+     * This means that if a deprecated setter methods need the old value, it will read the field directly.
+     * The intend is to avoid surprising code paths for user who override some methods.
+     */
+
     /**
      * Returns a unique identifier for this metadata record.
      *
@@ -373,7 +381,7 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "fileIdentifier")
-    public final String getFileIdentifier() {
+    public String getFileIdentifier() {
         final Identifier identifier = getMetadataIdentifier();
         return (identifier != null) ? identifier.getCode() : null;
     }
@@ -386,8 +394,8 @@ public class DefaultMetadata extends ISO
      * @deprecated As of ISO 19115:2014, replaced by {@link #setMetadataIdentifier(Identifier)}
      */
     @Deprecated
-    public final void setFileIdentifier(final String newValue) {
-        DefaultIdentifier identifier = DefaultIdentifier.castOrCopy(getMetadataIdentifier());
+    public void setFileIdentifier(final String newValue) {
+        DefaultIdentifier identifier = DefaultIdentifier.castOrCopy(metadataIdentifier); // See "Note about deprecated methods implementation"
         if (identifier == null) {
             if (newValue == null) return;
             identifier = new DefaultIdentifier();
@@ -445,8 +453,8 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "language")
-    public final Locale getLanguage() {
-        return OtherLocales.getFirst(languages);
+    public Locale getLanguage() {
+        return OtherLocales.getFirst(getLanguages());
         // No warning if the collection contains more than one locale, because
         // this is allowed by the "getLanguage() + getLocales()" contract.
     }
@@ -465,9 +473,9 @@ public class DefaultMetadata extends ISO
      * @deprecated As of GeoAPI 3.1, replaced by {@link #setLanguages(Collection)}.
      */
     @Deprecated
-    public final void setLanguage(final Locale newValue) {
+    public void setLanguage(final Locale newValue) {
         checkWritePermission();
-        setLanguages(OtherLocales.setFirst(languages, newValue));
+        setLanguages(OtherLocales.setFirst(languages, newValue)); // See "Note about deprecated methods implementation"
     }
 
     /**
@@ -481,7 +489,7 @@ public class DefaultMetadata extends ISO
     @Deprecated
     @XmlElement(name = "locale")
     @XmlJavaTypeAdapter(PT_Locale.class)
-    public final Collection<Locale> getLocales() {
+    public Collection<Locale> getLocales() {
         return OtherLocales.filter(getLanguages());
     }
 
@@ -493,9 +501,9 @@ public class DefaultMetadata extends ISO
      * @deprecated As of GeoAPI 3.1, replaced by {@link #setLanguages(Collection)}.
      */
     @Deprecated
-    public final void setLocales(final Collection<? extends Locale> newValues) {
+    public void setLocales(final Collection<? extends Locale> newValues) {
         checkWritePermission();
-        setLanguages(OtherLocales.merge(getLanguage(), newValues));
+        setLanguages(OtherLocales.merge(OtherLocales.getFirst(languages), newValues)); // See "Note about deprecated methods implementation"
     }
 
     /**
@@ -546,8 +554,8 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "characterSet")
-    public final Charset getCharacterSet() {
-        return LegacyPropertyAdapter.getSingleton(characterSets, Charset.class, null, DefaultMetadata.class, "getCharacterSet");
+    public Charset getCharacterSet() {
+        return LegacyPropertyAdapter.getSingleton(getCharacterSets(), Charset.class, null, DefaultMetadata.class, "getCharacterSet");
     }
 
     /**
@@ -558,7 +566,7 @@ public class DefaultMetadata extends ISO
      * @deprecated As of GeoAPI 3.1, replaced by {@link #setCharacterSets(Collection)}.
      */
     @Deprecated
-    public final void setCharacterSet(final Charset newValue) {
+    public void setCharacterSet(final Charset newValue) {
         setCharacterSets(LegacyPropertyAdapter.asCollection(newValue));
     }
 
@@ -597,7 +605,7 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "parentIdentifier")
-    public final String getParentIdentifier() {
+    public String getParentIdentifier() {
         final Citation parentMetadata = getParentMetadata();
         if (parentMetadata != null) {
             final InternationalString title = parentMetadata.getTitle();
@@ -616,14 +624,14 @@ public class DefaultMetadata extends ISO
      * @deprecated As of ISO 19115:2014, replaced by {@link #getParentMetadata()}.
      */
     @Deprecated
-    public final void setParentIdentifier(final String newValue) {
+    public void setParentIdentifier(final String newValue) {
         checkWritePermission();
-        DefaultCitation parentMetadata = DefaultCitation.castOrCopy(getParentMetadata());
-        if (parentMetadata == null) {
-            parentMetadata = new DefaultCitation();
+        DefaultCitation parent = DefaultCitation.castOrCopy(parentMetadata); // See "Note about deprecated methods implementation"
+        if (parent == null) {
+            parent = new DefaultCitation();
         }
-        parentMetadata.setTitle(new SimpleInternationalString(newValue));
-        setParentMetadata(parentMetadata);
+        parent.setTitle(new SimpleInternationalString(newValue));
+        setParentMetadata(parent);
     }
 
     /**
@@ -692,7 +700,7 @@ public class DefaultMetadata extends ISO
      *   and {@link DefaultMetadataScope#setResourceScope(ScopeCode)}.
      */
     @Deprecated
-    public final void setHierarchyLevels(final Collection<? extends ScopeCode> newValues) {
+    public void setHierarchyLevels(final Collection<? extends ScopeCode> newValues) {
         checkWritePermission();
         ((LegacyPropertyAdapter<ScopeCode,?>) getHierarchyLevels()).setValues(newValues);
     }
@@ -741,7 +749,7 @@ public class DefaultMetadata extends ISO
      *   and {@link DefaultMetadataScope#setName(InternationalString)}.
      */
     @Deprecated
-    public final void setHierarchyLevelNames(final Collection<? extends String> newValues) {
+    public void setHierarchyLevelNames(final Collection<? extends String> newValues) {
         checkWritePermission();
         ((LegacyPropertyAdapter<String,?>) getHierarchyLevelNames()).setValues(newValues);
     }
@@ -803,8 +811,8 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "dateStamp", required = true)
-    public final Date getDateStamp() {
-        final Collection<CitationDate> dates = this.dates;
+    public Date getDateStamp() {
+        final Collection<CitationDate> dates = getDates();
         if (dates != null) {
             for (final CitationDate date : dates) {
                 if (DateType.CREATION.equals(date.getDateType())) {
@@ -823,16 +831,16 @@ public class DefaultMetadata extends ISO
      * @deprecated As of ISO 19115:2014, replaced by {@link #setDates(Collection)}.
      */
     @Deprecated
-    public final void setDateStamp(final Date newValue) {
+    public void setDateStamp(final Date newValue) {
         checkWritePermission();
-        Collection<CitationDate> dates = this.dates;
-        if (dates == null) {
+        Collection<CitationDate> newValues = dates; // See "Note about deprecated methods implementation"
+        if (newValues == null) {
             if (newValue == null) {
                 return;
             }
-            dates = new ArrayList<>(1);
+            newValues = new ArrayList<>(1);
         } else {
-            final Iterator<CitationDate> it = dates.iterator();
+            final Iterator<CitationDate> it = newValues.iterator();
             while (it.hasNext()) {
                 final CitationDate date = it.next();
                 if (DateType.CREATION.equals(date.getDateType())) {
@@ -849,8 +857,8 @@ public class DefaultMetadata extends ISO
                 }
             }
         }
-        dates.add(new DefaultCitationDate(newValue, DateType.CREATION));
-        setDates(dates);
+        newValues.add(new DefaultCitationDate(newValue, DateType.CREATION));
+        setDates(newValues);
     }
 
     /**
@@ -933,7 +941,7 @@ public class DefaultMetadata extends ISO
      * Implementation of legacy {@link #getMetadataStandardName()} and {@link #getMetadataStandardVersion()} methods.
      */
     private String getMetadataStandard(final boolean version) {
-        final Citation standard = LegacyPropertyAdapter.getSingleton(metadataStandards,
+        final Citation standard = LegacyPropertyAdapter.getSingleton(getMetadataStandards(),
                 Citation.class, null, DefaultMetadata.class, version ? "getMetadataStandardName" : "getMetadataStandardVersion");
         if (standard != null) {
             final InternationalString title = version ? standard.getEdition() : standard.getTitle();
@@ -982,7 +990,7 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "metadataStandardName")
-    public final String getMetadataStandardName() {
+    public String getMetadataStandardName() {
         return getMetadataStandard(false);
     }
 
@@ -995,7 +1003,7 @@ public class DefaultMetadata extends ISO
      *   followed by {@link DefaultCitation#setTitle(InternationalString)}.
      */
     @Deprecated
-    public final void setMetadataStandardName(final String newValue) {
+    public void setMetadataStandardName(final String newValue) {
         setMetadataStandard(false, newValue);
     }
 
@@ -1010,7 +1018,7 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "metadataStandardVersion")
-    public final String getMetadataStandardVersion() {
+    public String getMetadataStandardVersion() {
         return getMetadataStandard(true);
     }
 
@@ -1023,7 +1031,7 @@ public class DefaultMetadata extends ISO
      *   followed by {@link DefaultCitation#setEdition(InternationalString)}.
      */
     @Deprecated
-    public final void setMetadataStandardVersion(final String newValue) {
+    public void setMetadataStandardVersion(final String newValue) {
         setMetadataStandard(true, newValue);
     }
 
@@ -1061,10 +1069,11 @@ public class DefaultMetadata extends ISO
     @Override
     @Deprecated
     @XmlElement(name = "dataSetURI")
-    public final String getDataSetUri() {
+    public String getDataSetUri() {
         String linkage = null;
-        if (identificationInfo != null) {
-            for (final Identification identification : identificationInfo) {
+        final Collection<Identification> info = getIdentificationInfo();
+        if (info != null) {
+            for (final Identification identification : info) {
                 final Citation citation = identification.getCitation();
                 if (citation != null) {
                     final Collection<? extends OnlineResource> onlineResources = citation.getOnlineResources();
@@ -1100,11 +1109,11 @@ public class DefaultMetadata extends ISO
      *    followed by {@link DefaultCitation#setOnlineResources(Collection)}.
      */
     @Deprecated
-    public final void setDataSetUri(final String newValue) throws URISyntaxException {
+    public void setDataSetUri(final String newValue) throws URISyntaxException {
         final URI uri = new URI(newValue);
         checkWritePermission();
-        Collection<Identification> identificationInfo = this.identificationInfo;
-        AbstractIdentification firstId = AbstractIdentification.castOrCopy(OtherLocales.getFirst(identificationInfo));
+        Collection<Identification> info = identificationInfo; // See "Note about deprecated methods implementation"
+        AbstractIdentification firstId = AbstractIdentification.castOrCopy(OtherLocales.getFirst(info));
         if (firstId == null) {
             firstId = new DefaultDataIdentification();
         }
@@ -1121,8 +1130,8 @@ public class DefaultMetadata extends ISO
         onlineResources = OtherLocales.setFirst(onlineResources, firstOnline);
         citation.setOnlineResources(onlineResources);
         firstId.setCitation(citation);
-        identificationInfo = OtherLocales.setFirst(identificationInfo, firstId);
-        setIdentificationInfo(identificationInfo);
+        info = OtherLocales.setFirst(info, firstId);
+        setIdentificationInfo(info);
     }
 
     /**

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultContact.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultContact.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultContact.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultContact.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -216,9 +216,10 @@ public class DefaultContact extends ISOM
     @Override
     @Deprecated
     @XmlElement(name = "phone")
-    public final Telephone getPhone() {
+    public Telephone getPhone() {
         Telephone phone = null;
-        if (phones != null) {
+        final Collection<Telephone> phones = getPhones();
+        if (phones != null) { // May be null on marshalling.
             TelephoneType ignored = null;
             for (final Telephone c : phones) {
                 final TelephoneType type = c.getNumberType();
@@ -247,7 +248,7 @@ public class DefaultContact extends ISOM
      * @deprecated As of ISO 19115:2014, replaced by {@link #setPhones(Collection)}.
      */
     @Deprecated
-    public final void setPhone(Telephone newValue) {
+    public void setPhone(Telephone newValue) {
         Collection<Telephone> newValues = null;
         if (newValue != null) {
             if (newValue instanceof DefaultTelephone) {
@@ -299,8 +300,8 @@ public class DefaultContact extends ISOM
     @Override
     @Deprecated
     @XmlElement(name = "address")
-    public final Address getAddress() {
-        return LegacyPropertyAdapter.getSingleton(addresses, Address.class, null, DefaultContact.class, "getAddress");
+    public Address getAddress() {
+        return LegacyPropertyAdapter.getSingleton(getAddresses(), Address.class, null, DefaultContact.class, "getAddress");
     }
 
     /**
@@ -312,7 +313,7 @@ public class DefaultContact extends ISOM
      * @deprecated As of ISO 19115:2014, replaced by {@link #setAddresses(Collection)}.
      */
     @Deprecated
-    public final void setAddress(final Address newValue) {
+    public void setAddress(final Address newValue) {
         setAddresses(LegacyPropertyAdapter.asCollection(newValue));
     }
 
@@ -351,7 +352,7 @@ public class DefaultContact extends ISOM
     @Deprecated
     @XmlElement(name = "onlineResource")
     public OnlineResource getOnlineResource() {
-        return LegacyPropertyAdapter.getSingleton(onlineResources, OnlineResource.class, null, DefaultContact.class, "getOnlineResource");
+        return LegacyPropertyAdapter.getSingleton(getOnlineResources(), OnlineResource.class, null, DefaultContact.class, "getOnlineResource");
     }
 
     /**

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultTelephone.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultTelephone.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultTelephone.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultTelephone.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -277,7 +277,7 @@ public class DefaultTelephone extends IS
      *             with {@link TelephoneType#VOICE}.
      */
     @Deprecated
-    public final void setVoices(final Collection<? extends String> newValues) {
+    public void setVoices(final Collection<? extends String> newValues) {
         ((LegacyTelephones) getVoices()).setValues(newValues);
     }
 
@@ -309,7 +309,7 @@ public class DefaultTelephone extends IS
      *             with {@link TelephoneType#FACSIMILE}.
      */
     @Deprecated
-    public final void setFacsimiles(final Collection<? extends String> newValues) {
+    public void setFacsimiles(final Collection<? extends String> newValues) {
         ((LegacyTelephones) getFacsimiles()).setValues(newValues);
     }
 }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultCoverageDescription.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultCoverageDescription.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultCoverageDescription.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultCoverageDescription.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -17,6 +17,7 @@
 package org.apache.sis.metadata.iso.content;
 
 import java.util.Collection;
+import java.util.Collections;
 import javax.xml.bind.annotation.XmlType;
 import javax.xml.bind.annotation.XmlSeeAlso;
 import javax.xml.bind.annotation.XmlElement;
@@ -226,10 +227,11 @@ public class DefaultCoverageDescription 
     @Override
     @Deprecated
     @XmlElement(name = "contentType", required = true)
-    public final CoverageContentType getContentType() {
+    public CoverageContentType getContentType() {
         CoverageContentType type = null;
-        if (attributeGroups != null) {
-            for (final AttributeGroup g : attributeGroups) {
+        final Collection<AttributeGroup> groups = getAttributeGroups();
+        if (groups != null) { // May be null on marshalling.
+            for (final AttributeGroup g : groups) {
                 final Collection<? extends CoverageContentType> contentTypes = g.getContentTypes();
                 if (contentTypes != null) { // May be null on marshalling.
                     for (final CoverageContentType t : contentTypes) {
@@ -256,19 +258,26 @@ public class DefaultCoverageDescription 
      * @deprecated As of ISO 19115:2014, moved to {@link DefaultAttributeGroup#setContentTypes(Collection)}.
      */
     @Deprecated
-    public final void setContentType(final CoverageContentType newValue) {
+    public void setContentType(final CoverageContentType newValue) {
         checkWritePermission();
         final Collection<CoverageContentType> newValues = LegacyPropertyAdapter.asCollection(newValue);
-        final Collection<AttributeGroup> groups = getAttributeGroups();
-        for (final AttributeGroup group : groups) {
-            if (group instanceof DefaultAttributeGroup) {
-                ((DefaultAttributeGroup) group).setContentTypes(newValues);
-                return;
+        Collection<AttributeGroup> groups = attributeGroups;
+        if (groups != null) {
+            for (final AttributeGroup group : groups) {
+                if (group instanceof DefaultAttributeGroup) {
+                    ((DefaultAttributeGroup) group).setContentTypes(newValues);
+                    return;
+                }
             }
         }
         final DefaultAttributeGroup group = new DefaultAttributeGroup();
         group.setContentTypes(newValues);
-        groups.add(group);
+        if (groups != null) {
+            groups.add(group);
+        } else {
+            groups = Collections.singleton(group);
+        }
+        setAttributeGroups(groups);
     }
 
     /**
@@ -317,7 +326,7 @@ public class DefaultCoverageDescription 
      * @deprecated As of ISO 19115:2014, moved to {@link DefaultAttributeGroup#setGroupAttributes(Collection)}.
      */
     @Deprecated
-    public final void setDimensions(final Collection<? extends RangeDimension> newValues) {
+    public void setDimensions(final Collection<? extends RangeDimension> newValues) {
         checkWritePermission();
         ((LegacyPropertyAdapter<RangeDimension,?>) getDimensions()).setValues(newValues);
     }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureCatalogueDescription.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureCatalogueDescription.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureCatalogueDescription.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultFeatureCatalogueDescription.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -269,7 +269,7 @@ public class DefaultFeatureCatalogueDesc
      * @deprecated As of ISO 19115:2014, replaced by {@link #setFeatureTypeInfo(Collection)}.
      */
     @Deprecated
-    public final void setFeatureTypes(final Collection<? extends GenericName> newValues) {
+    public void setFeatureTypes(final Collection<? extends GenericName> newValues) {
         checkWritePermission();
         ((LegacyPropertyAdapter<GenericName,?>) getFeatureTypes()).setValues(newValues);
     }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultRangeDimension.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultRangeDimension.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultRangeDimension.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/content/DefaultRangeDimension.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -190,7 +190,7 @@ public class DefaultRangeDimension exten
     @Override
     @Deprecated
     @XmlElement(name = "descriptor")
-    public final InternationalString getDescriptor() {
+    public InternationalString getDescriptor() {
         return getDescription();
     }
 
@@ -203,7 +203,7 @@ public class DefaultRangeDimension exten
      * @deprecated As of ISO 19115:2014, renamed {@link #setDescription(InternationalString)}.
      */
     @Deprecated
-    public final void setDescriptor(final InternationalString newValue) {
+    public void setDescriptor(final InternationalString newValue) {
         setDescription(newValue);
     }
 

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDigitalTransferOptions.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDigitalTransferOptions.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDigitalTransferOptions.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDigitalTransferOptions.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -249,8 +249,8 @@ public class DefaultDigitalTransferOptio
     @Override
     @Deprecated
     @XmlElement(name = "offLine")
-    public final Medium getOffLine() {
-        return LegacyPropertyAdapter.getSingleton(offLines, Medium.class, null, DefaultDigitalTransferOptions.class, "getOffLine");
+    public Medium getOffLine() {
+        return LegacyPropertyAdapter.getSingleton(getOffLines(), Medium.class, null, DefaultDigitalTransferOptions.class, "getOffLine");
     }
 
     /**

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultFormat.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultFormat.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultFormat.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -31,6 +31,9 @@ import org.apache.sis.metadata.iso.citat
 import org.apache.sis.metadata.iso.ISOMetadata;
 import org.apache.sis.util.iso.Types;
 
+// Branch-dependent imports
+import java.util.function.BiConsumer;
+
 
 /**
  * Description of the computer language construct that specifies the representation
@@ -185,15 +188,24 @@ public class DefaultFormat extends ISOMe
     }
 
     /**
-     * Returns the {@link #formatSpecificationCitation} as a SIS implementation.
+     * Sets the specification title or version.
      */
-    private DefaultCitation getWritableCitation() {
-        Citation citation = getFormatSpecificationCitation();
-        if (!(citation instanceof DefaultCitation)) {
-            citation = new DefaultCitation(citation);
+    private <T> void setFormatSpecificationCitation(final BiConsumer<DefaultCitation,T> setter, final T value) {
+        Citation citation = formatSpecificationCitation;
+        if (citation != null || value != null) {
+            if (!(citation instanceof DefaultCitation)) {
+                citation = new DefaultCitation(citation);
+            }
+            setter.accept((DefaultCitation) citation, value);
+            if (value == null && ((DefaultCitation) citation).isEmpty()) {
+                citation = null;
+            }
+        }
+        // Invoke the non-deprecated setter method only if the reference changed,
+        // for consistency with other deprecated setter methods in metadata module.
+        if (citation != formatSpecificationCitation) {
             setFormatSpecificationCitation(citation);
         }
-        return (DefaultCitation) citation;
     }
 
     /**
@@ -224,7 +236,7 @@ public class DefaultFormat extends ISOMe
     @Deprecated
     public void setSpecification(final InternationalString newValue) {
         checkWritePermission();
-        getWritableCitation().setTitle(newValue);
+        setFormatSpecificationCitation((citation, value) -> citation.setTitle(value), newValue);
     }
 
     /**
@@ -239,7 +251,7 @@ public class DefaultFormat extends ISOMe
     @Override
     @Deprecated
     @XmlElement(name = "name", required = true)
-    public final InternationalString getName() {
+    public InternationalString getName() {
         final Citation citation = getFormatSpecificationCitation();
         if (citation != null) {
             return LegacyPropertyAdapter.getSingleton(citation.getAlternateTitles(),
@@ -260,7 +272,8 @@ public class DefaultFormat extends ISOMe
     @Deprecated
     public void setName(final InternationalString newValue) {
         checkWritePermission();
-        getWritableCitation().setAlternateTitles(LegacyPropertyAdapter.asCollection(newValue));
+        setFormatSpecificationCitation((citation, value) ->
+                citation.setAlternateTitles(LegacyPropertyAdapter.asCollection(value)), newValue);
     }
 
     /**
@@ -292,7 +305,7 @@ public class DefaultFormat extends ISOMe
     @Deprecated
     public void setVersion(final InternationalString newValue) {
         checkWritePermission();
-        getWritableCitation().setEdition(newValue);
+        setFormatSpecificationCitation((citation, value) -> citation.setEdition(value), newValue);
     }
 
     /**

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicBoundingBox.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicBoundingBox.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicBoundingBox.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicBoundingBox.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -111,9 +111,7 @@ import java.util.Objects;
     "northBoundLatitude"
 })
 @XmlRootElement(name = "EX_GeographicBoundingBox")
-public class DefaultGeographicBoundingBox extends AbstractGeographicExtent
-        implements GeographicBoundingBox
-{
+public class DefaultGeographicBoundingBox extends AbstractGeographicExtent implements GeographicBoundingBox {
     /**
      * Serial number for inter-operability with different versions.
      */

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicDescription.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicDescription.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicDescription.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/extent/DefaultGeographicDescription.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -46,9 +46,7 @@ import org.apache.sis.metadata.iso.Defau
  */
 @XmlType(name = "EX_GeographicDescription_Type")
 @XmlRootElement(name = "EX_GeographicDescription")
-public class DefaultGeographicDescription extends AbstractGeographicExtent
-        implements GeographicDescription
-{
+public class DefaultGeographicDescription extends AbstractGeographicExtent implements GeographicDescription {
     /**
      * Serial number for inter-operability with different versions.
      */

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -176,6 +176,7 @@ public class DefaultAggregateInformation
      *
      * @deprecated As of ISO 19115:2014, replaced by an identifier of {@link #getAggregateDataSetName()}.
      */
+    @Deprecated
     public void setAggregateDataSetIdentifier(final Identifier newValue) {
         checkWritePermission();
         Citation name = getAggregateDataSetName();

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultServiceIdentification.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultServiceIdentification.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultServiceIdentification.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultServiceIdentification.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -248,6 +248,8 @@ public class DefaultServiceIdentificatio
      * Returns information about the availability of the service.
      *
      * @return Information about the availability of the service, or {@code null} if none.
+     *
+     * @since 0.5
      */
     @Override
 /// @XmlElement(name = "accessProperties", namespace = Namespaces.SRV)
@@ -260,6 +262,8 @@ public class DefaultServiceIdentificatio
      * Sets information about the availability of the service.
      *
      * @param newValue The new information about the availability of the service.
+     *
+     * @since 0.5
      */
     public void setAccessProperties(final StandardOrderProcess newValue) {
         checkWritePermission();
@@ -311,6 +315,8 @@ public class DefaultServiceIdentificatio
      * Returns the reference(s) to the resource on which the service operates.
      *
      * @return Reference(s) to the resource on which the service operates.
+     *
+     * @since 0.5
      */
     @Override
 /// @XmlElement(name = "operatedDataset", namespace = Namespaces.SRV)
@@ -322,6 +328,8 @@ public class DefaultServiceIdentificatio
      * Sets the reference(s) to the resource on which the service operates.
      *
      * @param newValues The new reference(s) to the resource on which the service operates.
+     *
+     * @since 0.5
      */
     public void setOperatedDatasets(final Collection<? extends Citation> newValues) {
         operatedDatasets = writeCollection(newValues, operatedDatasets, Citation.class);
@@ -331,6 +339,8 @@ public class DefaultServiceIdentificatio
      * Returns the profile(s) to which the service adheres.
      *
      * @return Profile(s) to which the service adheres.
+     *
+     * @since 0.5
      */
     @Override
 /// @XmlElement(name = "profile", namespace = Namespaces.SRV)
@@ -351,6 +361,8 @@ public class DefaultServiceIdentificatio
      * Returns the standard(s) to which the service adheres.
      *
      * @return Standard(s) to which the service adheres.
+     *
+     * @since 0.5
      */
     @Override
 /// @XmlElement(name = "serviceStandard", namespace = Namespaces.SRV)
@@ -362,6 +374,8 @@ public class DefaultServiceIdentificatio
      * Sets the standard(s) to which the service adheres.
      *
      * @param newValues The new standard(s) to which the service adheres.
+     *
+     * @since 0.5
      */
     public void setServiceStandards(final Collection<? extends Citation> newValues) {
         serviceStandards = writeCollection(newValues, serviceStandards, Citation.class);
@@ -411,6 +425,8 @@ public class DefaultServiceIdentificatio
      * Provides information about the chain applied by the service.
      *
      * @return Information about the chain applied by the service.
+     *
+     * @since 0.5
      */
     @Override
 /// @XmlElement(name = "containsChain", namespace = Namespaces.SRV)
@@ -422,6 +438,8 @@ public class DefaultServiceIdentificatio
      * Sets the information about the chain applied by the service.
      *
      * @param newValues The new information about the chain applied by the service.
+     *
+     * @since 0.5
      */
     public void setContainsChain(final Collection<? extends OperationChainMetadata>  newValues) {
         containsChain = writeCollection(newValues, containsChain, OperationChainMetadata.class);

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -17,6 +17,7 @@
 package org.apache.sis.metadata.iso.lineage;
 
 import java.util.Collection;
+import java.util.Collections;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlSeeAlso;
@@ -247,7 +248,7 @@ public class DefaultSource extends ISOMe
     @Override
     @Deprecated
     @XmlElement(name = "scaleDenominator")
-    public final RepresentativeFraction getScaleDenominator() {
+    public RepresentativeFraction getScaleDenominator() {
         final Resolution resolution = getSourceSpatialResolution();
         return (resolution != null) ? resolution.getEquivalentScale() : null;
     }
@@ -262,13 +263,21 @@ public class DefaultSource extends ISOMe
      * @deprecated As of ISO 19115:2014, moved to {@link DefaultResolution#setEquivalentScale(RepresentativeFraction)}.
      */
     @Deprecated
-    public final void setScaleDenominator(final RepresentativeFraction newValue)  {
+    public void setScaleDenominator(final RepresentativeFraction newValue)  {
         checkWritePermission();
-        Resolution resolution = getSourceSpatialResolution();
-        if (resolution instanceof DefaultResolution) {
-            ((DefaultResolution) resolution).setEquivalentScale(newValue);
-        } else if (newValue != null) {
-            setSourceSpatialResolution(new DefaultResolution(newValue));
+        Resolution resolution = null;
+        if (newValue != null) {
+            resolution = sourceSpatialResolution;
+            if (resolution instanceof DefaultResolution) {
+                ((DefaultResolution) resolution).setEquivalentScale(newValue);
+            } else {
+                resolution = new DefaultResolution(newValue);
+            }
+        }
+        // Invoke the non-deprecated setter method only if the reference changed,
+        // for consistency with other deprecated setter methods in metadata module.
+        if (resolution != sourceSpatialResolution) {
+            setSourceSpatialResolution(resolution);
         }
     }
 
@@ -377,11 +386,15 @@ public class DefaultSource extends ISOMe
     @Override
     @Deprecated
     @XmlElement(name = "sourceExtent")
-    public final Collection<Extent> getSourceExtents() {
+    public Collection<Extent> getSourceExtents() {
         Scope scope = getScope();
         if (!(scope instanceof DefaultScope)) {
-            scope = new DefaultScope(scope);
-            setScope(scope);
+            if (isModifiable()) {
+                scope = new DefaultScope(scope);
+                this.scope = scope;
+            } else {
+                return Collections.unmodifiableCollection(scope.getExtents());
+            }
         }
         return ((DefaultScope) scope).getExtents();
     }
@@ -395,8 +408,9 @@ public class DefaultSource extends ISOMe
      * @deprecated As of ISO 19115:2014, moved to {@link DefaultScope#setExtent(Extent)}.
      */
     @Deprecated
-    public final void setSourceExtents(final Collection<? extends Extent> newValues) {
-        Scope scope = getScope();
+    public void setSourceExtents(final Collection<? extends Extent> newValues) {
+        checkWritePermission();
+        Scope scope = this.scope;
         if (!(scope instanceof DefaultScope)) {
             scope = new DefaultScope(scope);
             setScope(scope);

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -17,7 +17,9 @@
 package org.apache.sis.metadata.iso.maintenance;
 
 import java.util.Date;
+import java.util.Iterator;
 import java.util.Collection;
+import java.util.Collections;
 import javax.xml.bind.annotation.XmlType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -227,9 +229,10 @@ public class DefaultMaintenanceInformati
     @Override
     @Deprecated
     @XmlElement(name = "dateOfNextUpdate")
-    public final Date getDateOfNextUpdate() {
-        if (maintenanceDates != null) {
-            for (final CitationDate date : maintenanceDates) {
+    public Date getDateOfNextUpdate() {
+        final Collection<CitationDate> dates = getMaintenanceDates();
+        if (dates != null) { // May be null on XML marshalling.
+            for (final CitationDate date : dates) {
                 if (DateType.NEXT_UPDATE.equals(date.getDateType())) {
                     return date.getDate();
                 }
@@ -245,18 +248,32 @@ public class DefaultMaintenanceInformati
      * @param newValue The new date of next update.
      */
     @Deprecated
-    public final void setDateOfNextUpdate(final Date newValue) {
+    public void setDateOfNextUpdate(final Date newValue) {
         checkWritePermission();
-        if (newValue != null) {
-            if (maintenanceDates != null) {
-                for (final CitationDate date : maintenanceDates) {
-                    if (date instanceof DefaultCitationDate && DateType.NEXT_UPDATE.equals(date.getDateType())) {
+        Collection<CitationDate> dates = maintenanceDates;
+        if (dates != null) {
+            final Iterator<CitationDate> it = dates.iterator();
+            while (it.hasNext()) {
+                final CitationDate date = it.next();
+                if (DateType.NEXT_UPDATE.equals(date.getDateType())) {
+                    if (newValue == null) {
+                        it.remove();
+                        return;
+                    } else if (date instanceof DefaultCitationDate) {
                         ((DefaultCitationDate) date).setDate(newValue);
                         return;
                     }
                 }
             }
-            getMaintenanceDates().add(new DefaultCitationDate(newValue, DateType.NEXT_UPDATE));
+        }
+        if (newValue != null) {
+            final CitationDate date = new DefaultCitationDate(newValue, DateType.NEXT_UPDATE);
+            if (dates != null) {
+                dates.add(date);
+            } else {
+                dates = Collections.singleton(date);
+            }
+            setMaintenanceDates(dates);
         }
     }
 
@@ -350,7 +367,7 @@ public class DefaultMaintenanceInformati
      * @deprecated As of ISO 19115:2014, replaced by {@link #setMaintenanceScopes(Collection)}.
      */
     @Deprecated
-    public final void setUpdateScopes(final Collection<? extends ScopeCode> newValues) {
+    public void setUpdateScopes(final Collection<? extends ScopeCode> newValues) {
         checkWritePermission();
         ((LegacyPropertyAdapter<ScopeCode,?>) getUpdateScopes()).setValues(newValues);
     }
@@ -403,7 +420,7 @@ public class DefaultMaintenanceInformati
      * @deprecated As of ISO 19115:2014, replaced by {@link #setMaintenanceScopes(Collection)}.
      */
     @Deprecated
-    public final void setUpdateScopeDescriptions(final Collection<? extends ScopeDescription> newValues) {
+    public void setUpdateScopeDescriptions(final Collection<? extends ScopeDescription> newValues) {
         checkWritePermission();
         ((LegacyPropertyAdapter<ScopeDescription,?>) getUpdateScopeDescriptions()).setValues(newValues);
     }

Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java?rev=1634463&r1=1634462&r2=1634463&view=diff
==============================================================================
--- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java [UTF-8] (original)
+++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java [UTF-8] Mon Oct 27 07:36:36 2014
@@ -116,7 +116,7 @@ public class DefaultScope extends org.ap
      */
     @Override
     @Deprecated
-    public final Extent getExtent() {
+    public Extent getExtent() {
         return LegacyPropertyAdapter.getSingleton(getExtents(), Extent.class, null, DefaultScope.class, "getExtent");
     }
 
@@ -129,7 +129,7 @@ public class DefaultScope extends org.ap
      * @deprecated As of ISO 19115:2014, replaced by {@link #setExtents(Collection)}.
      */
     @Deprecated
-    public final void setExtent(final Extent newValue) {
+    public void setExtent(final Extent newValue) {
         setExtents(LegacyPropertyAdapter.asCollection(newValue));
     }
 }



Mime
View raw message