This is an automated email from the ASF dual-hosted git repository.

desruisseaux pushed a commit to branch geoapi-3.1
in repository https://gitbox.apache.org/repos/asf/sis.git

commit ea550df01ab4c54f6d7a8068165003bb8edb8ad5
Merge: b0a78e75af 362154b28d
Author: Martin Desruisseaux <martin.desruisse...@geomatys.com>
AuthorDate: Thu May 9 12:59:09 2024 +0200

    Merge branch 'geoapi-4.0' into geoapi-3.1: removal of some 
`org.opengis.temporal` interfaces.

 .../main/org/apache/sis/filter/TemporalFilter.java |  94 ++--------
 .../test/org/apache/sis/filter/PeriodLiteral.java  |  27 +--
 .../org.apache.sis.metadata/main/module-info.java  |   1 -
 .../DefaultDigitalTransferOptions.java             |  17 +-
 .../metadata/iso/distribution/package-info.java    |   2 +-
 .../sis/metadata/iso/extent/DefaultExtent.java     |   2 -
 .../metadata/iso/extent/DefaultTemporalExtent.java |  31 ++--
 .../apache/sis/metadata/iso/extent/Extents.java    |   4 -
 .../iso/identification/AbstractIdentification.java |  25 +--
 .../metadata/iso/identification/package-info.java  |   2 +-
 .../metadata/iso/lineage/DefaultProcessStep.java   |   5 +-
 .../maintenance/DefaultMaintenanceInformation.java |  14 +-
 .../sis/metadata/iso/maintenance/package-info.java |   6 +-
 .../sis/metadata/privy/TemporalUtilities.java      | 144 ---------------
 .../apache/sis/metadata/simple/SimpleDuration.java |  76 --------
 .../apache/sis/pending/temporal/DefaultPeriod.java |   9 +-
 .../org/apache/sis/pending/temporal/Primitive.java |  17 +-
 .../sis/pending/temporal/TemporalUtilities.java    | 103 +++++++++++
 .../apache/sis/pending/temporal/package-info.java  |   6 +-
 .../org/apache/sis/xml/bind/gml/TM_Primitive.java  |   9 +-
 .../org/apache/sis/xml/bind/gml/TimeInstant.java   |  21 +--
 .../apache/sis/xml/bind/gml/TimePeriodBound.java   |   2 +-
 .../org/apache/sis/xml/bind/gts/TM_Duration.java   | 127 ++++++++++---
 .../apache/sis/xml/bind/gts/TM_PeriodDuration.java | 203 ---------------------
 .../apache/sis/metadata/PropertyAccessorTest.java  |   4 +-
 .../apache/sis/xml/bind/gml/TimePeriodTest.java    |  26 +--
 .../referencing/operation/projection/Robinson.java |  20 +-
 .../sis/storage/geotiff/reader/XMLMetadata.java    |   3 +-
 .../apache/sis/storage/netcdf/base/CRSBuilder.java |   4 +-
 .../apache/sis/storage/base/MetadataBuilder.java   |  26 ++-
 .../src/org.apache.sis.util/main/module-info.java  |   3 -
 .../sis/pending/temporal/DefaultInstant.java       |  65 -------
 .../pending/temporal/DefaultPeriodDuration.java    |  87 ---------
 .../pending/temporal/DefaultTemporalFactory.java   | 155 ----------------
 geoapi/snapshot                                    |   2 +-
 35 files changed, 373 insertions(+), 969 deletions(-)

diff --cc 
endorsed/src/org.apache.sis.feature/test/org/apache/sis/filter/PeriodLiteral.java
index 74f99cbe45,e9738893d7..2df1ede402
--- 
a/endorsed/src/org.apache.sis.feature/test/org/apache/sis/filter/PeriodLiteral.java
+++ 
b/endorsed/src/org.apache.sis.feature/test/org/apache/sis/filter/PeriodLiteral.java
@@@ -23,6 -23,6 +23,8 @@@ import java.io.Serializable
  import org.apache.sis.test.TestUtilities;
  
  // Specific to the geoapi-3.1 and geoapi-4.0 branches:
++import java.time.Instant;
++import java.time.temporal.TemporalAmount;
  import org.opengis.feature.Feature;
  import org.opengis.filter.Expression;
  import org.opengis.filter.Literal;
@@@ -62,29 -62,14 +62,14 @@@ final class PeriodLiteral implements Pe
      @Override public Period getValue() {return this;}
  
      /** Returns a bound of this period. */
-     @Override public org.opengis.temporal.Instant getBeginning() {return 
instant(begin);}
-     @Override public org.opengis.temporal.Instant getEnding()    {return 
instant(end);}
- 
-     /** Wraps the value that defines a period. */
-     private static org.opengis.temporal.Instant instant(final long t) {
-         return new org.opengis.temporal.Instant() {
-             @Override public Date   getDate()  {return new Date(t);}
-             @Override public String toString() {return "Instant[" + 
TestUtilities.format(getDate()) + '[';}
- 
-             /** Not needed for the tests. */
-             @Override public ReferenceIdentifier getName()                    
       {throw new UnsupportedOperationException();}
-             @Override public TemporalPosition getTemporalPosition()           
       {throw new UnsupportedOperationException();}
-             @Override public RelativePosition 
relativePosition(TemporalPrimitive o)  {throw new 
UnsupportedOperationException();}
-             @Override public Duration         
distance(TemporalGeometricPrimitive o) {throw new 
UnsupportedOperationException();}
-             @Override public Duration         length()                        
       {throw new UnsupportedOperationException();}
-         };
-     }
+     @Override public Instant getBeginning() {return 
Instant.ofEpochMilli(begin);}
+     @Override public Instant getEnding()    {return 
Instant.ofEpochMilli(end);}
  
      /** Not needed for the tests. */
 -    @Override public Identifier       getName()                              
{throw new UnsupportedOperationException();}
 +    @Override public ReferenceIdentifier getName()                           
{throw new UnsupportedOperationException();}
      @Override public RelativePosition relativePosition(TemporalPrimitive o)  
{throw new UnsupportedOperationException();}
-     @Override public Duration         distance(TemporalGeometricPrimitive o) 
{throw new UnsupportedOperationException();}
-     @Override public Duration         length()                               
{throw new UnsupportedOperationException();}
+     @Override public TemporalAmount   distance(TemporalGeometricPrimitive o) 
{throw new UnsupportedOperationException();}
+     @Override public TemporalAmount   length()                               
{throw new UnsupportedOperationException();}
      @Override public <N> Expression<Feature,N> toValueType(Class<N> target)  
{throw new UnsupportedOperationException();}
  
      /**
diff --cc 
endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/identification/AbstractIdentification.java
index 38c04ba18a,e3132e1663..a495ddccf2
--- 
a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/identification/AbstractIdentification.java
+++ 
b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/identification/AbstractIdentification.java
@@@ -48,13 -48,13 +48,13 @@@ import org.apache.sis.xml.bind.metadata
  import org.apache.sis.xml.privy.LegacyNamespaces;
  import org.apache.sis.util.iso.Types;
  
 +// Specific to the main and geoapi-3.1 branches:
 +import org.opengis.metadata.citation.ResponsibleParty;
 +
  // Specific to the geoapi-3.1 and geoapi-4.0 branches:
+ import java.time.temporal.TemporalAmount;
  import org.opengis.metadata.identification.AssociatedResource;
- import org.opengis.temporal.Duration;
  
 -// Specific to the geoapi-4.0 branch:
 -import org.opengis.metadata.citation.Responsibility;
 -
  
  /**
   * Basic information required to uniquely identify a resource or resources.
@@@ -283,12 -284,12 +284,12 @@@ public class AbstractIdentification ext
              citation                   = object.getCitation();
              abstracts                  = object.getAbstract();
              purpose                    = object.getPurpose();
 -            credits                    = copyCollection(object.getCredits(), 
InternationalString.class);
 +            credits                    = copyCollection(object.getCredits(), 
String.class);
              status                     = copyCollection(object.getStatus(), 
Progress.class);
 -            pointOfContacts            = 
copyCollection(object.getPointOfContacts(), Responsibility.class);
 +            pointOfContacts            = 
copyCollection(object.getPointOfContacts(), ResponsibleParty.class);
              spatialRepresentationTypes = 
copyCollection(object.getSpatialRepresentationTypes(), 
SpatialRepresentationType.class);
              spatialResolutions         = 
copyCollection(object.getSpatialResolutions(), Resolution.class);
-             temporalResolutions        = 
copyCollection(object.getTemporalResolutions(), Duration.class);
+             temporalResolutions        = 
copyCollection(object.getTemporalResolutions(), TemporalAmount.class);
              topicCategories            = 
copyCollection(object.getTopicCategories(), TopicCategory.class);
              extents                    = copyCollection(object.getExtents(), 
Extent.class);
              additionalDocumentations   = 
copyCollection(object.getAdditionalDocumentations(), Citation.class);
diff --cc 
endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/lineage/DefaultProcessStep.java
index e37f63d6a9,861ad6a85d..8bd88d1493
--- 
a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/lineage/DefaultProcessStep.java
+++ 
b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/lineage/DefaultProcessStep.java
@@@ -37,11 -37,8 +37,11 @@@ import org.apache.sis.xml.bind.FilterBy
  import org.apache.sis.xml.privy.LegacyNamespaces;
  import org.apache.sis.xml.bind.gml.TM_Primitive;
  import org.apache.sis.xml.bind.metadata.MD_Scope;
- import org.apache.sis.metadata.privy.TemporalUtilities;
+ import org.apache.sis.pending.temporal.TemporalUtilities;
  
 +// Specific to the main and geoapi-3.1 branches:
 +import org.opengis.metadata.citation.ResponsibleParty;
 +
  // Specific to the geoapi-3.1 and geoapi-4.0 branches:
  import org.opengis.metadata.maintenance.Scope;
  
diff --cc 
endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java
index 6a02bdfe2e,9a6ca19e82..dd275b64e4
--- 
a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java
+++ 
b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java
@@@ -303,6 -303,6 +303,11 @@@ public class DefaultMaintenanceInformat
      /**
       * Returns the maintenance period other than those defined.
       *
++     * <div class="warning"><b>Upcoming API change</b><br>
++     * The return type may be changed to {@link 
java.time.temporal.TemporalAmount} in Apache SIS 2.0.
++     * This change depend on a corresponding change in GeoAPI interfaces.
++     * </div>
++     *
       * @return the maintenance period, or {@code null}.
       */
      @Override
@@@ -314,9 -314,9 +319,14 @@@
      /**
       * Sets the maintenance period other than those defined.
       *
++     * <div class="warning"><b>Upcoming API change</b><br>
++     * The parameter type may be changed to {@link 
java.time.temporal.TemporalAmount} in Apache SIS 2.0.
++     * This change depend on a corresponding change in GeoAPI interfaces.
++     * </div>
++     *
       * @param  newValue  the new user defined maintenance frequency.
       */
 -    public void setUserDefinedMaintenanceFrequency(final TemporalAmount 
newValue) {
 +    public void setUserDefinedMaintenanceFrequency(final PeriodDuration 
newValue) {
          checkWritePermission(userDefinedMaintenanceFrequency);
          userDefinedMaintenanceFrequency = newValue;
      }
diff --cc 
endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/maintenance/package-info.java
index 400481289a,e72b18db41..21fee06f10
--- 
a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/maintenance/package-info.java
+++ 
b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/maintenance/package-info.java
@@@ -83,11 -83,9 +83,11 @@@
      @XmlJavaTypeAdapter(MD_Scope.class),
      @XmlJavaTypeAdapter(MD_ScopeCode.class),
      @XmlJavaTypeAdapter(MD_ScopeDescription.class),
-     @XmlJavaTypeAdapter(TM_PeriodDuration.class),
+     @XmlJavaTypeAdapter(TM_Duration.class),
  
      // Java types, primitive types and basic OGC types handling
 +    @XmlJavaTypeAdapter(FeatureTypeAdapter.class),
 +    @XmlJavaTypeAdapter(AttributeTypeAdapter.class),
      @XmlJavaTypeAdapter(StringAdapter.class),
      @XmlJavaTypeAdapter(CharSequenceAdapter.class),
      @XmlJavaTypeAdapter(InternationalStringAdapter.class)
diff --cc 
endorsed/src/org.apache.sis.metadata/main/org/apache/sis/pending/temporal/Primitive.java
index 15bebacc08,d8c284e1dd..9282f598a6
--- 
a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/pending/temporal/Primitive.java
+++ 
b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/pending/temporal/Primitive.java
@@@ -21,8 -20,9 +20,9 @@@ import org.opengis.temporal.RelativePos
  import org.opengis.temporal.TemporalGeometricPrimitive;
  import org.opengis.temporal.TemporalPrimitive;
  
 -// Specific to the geoapi-4.0 branch:
 +// Specific to the geoapi-3.1 branch:
+ import java.time.temporal.TemporalAmount;
 -import org.opengis.metadata.Identifier;
 +import org.opengis.referencing.ReferenceIdentifier;
  
  
  /**
@@@ -31,7 -31,7 +31,7 @@@
   *
   * @author  Martin Desruisseaux (Geomatys)
   */
- class Primitive implements TemporalGeometricPrimitive, ReferenceIdentifier {
 -abstract class Primitive implements TemporalGeometricPrimitive, Identifier {
++abstract class Primitive implements TemporalGeometricPrimitive, 
ReferenceIdentifier {
      /**
       * For sub-class constructors.
       */
diff --cc 
endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/PropertyAccessorTest.java
index be198665a2,f093384518..4425dfc907
--- 
a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/PropertyAccessorTest.java
+++ 
b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/PropertyAccessorTest.java
@@@ -62,16 -62,15 +62,16 @@@ import org.apache.sis.metadata.iso.cita
  import static org.apache.sis.test.TestUtilities.getSingleton;
  import static org.apache.sis.metadata.Assertions.assertTitleEquals;
  
 +// Specific to the main and geoapi-3.1 branches:
 +import org.opengis.metadata.citation.ResponsibleParty;
 +import org.opengis.referencing.ReferenceIdentifier;
 +
  // Specific to the geoapi-3.1 and geoapi-4.0 branches:
++import java.time.temporal.TemporalAmount;
  import org.opengis.metadata.content.AttributeGroup;
  import org.opengis.referencing.ObjectDomain;
  import org.opengis.referencing.datum.DatumEnsemble;
- import org.opengis.temporal.Duration;
  
 -// Specific to the geoapi-4.0 branch:
 -import java.time.temporal.TemporalAmount;
 -import org.opengis.metadata.citation.Responsibility;
 -
  
  /**
   * Tests the {@link PropertyAccessor} class. Every tests in this class 
instantiates directly a
@@@ -211,12 -210,12 +211,12 @@@ public final class PropertyAccessorTes
              Identification.class, "getCitation",                   
"citation",                   "citation",                  "Citation",          
           Citation.class,
              Identification.class, "getAbstract",                   
"abstract",                   "abstract",                  "Abstract",          
           InternationalString.class,
              Identification.class, "getPurpose",                    "purpose", 
                   "purpose",                   "Purpose",                      
InternationalString.class,
 -            Identification.class, "getCredits",                    "credits", 
                   "credit",                    "Credits",                      
InternationalString[].class,
 +            Identification.class, "getCredits",                    "credits", 
                   "credit",                    "Credits",                      
String[].class,
              Identification.class, "getStatus",                     "status",  
                   "status",                    "Status",                       
Progress[].class,
 -            Identification.class, "getPointOfContacts",            
"pointOfContacts",            "pointOfContact",            "Point of contacts", 
           Responsibility[].class,
 +            Identification.class, "getPointOfContacts",            
"pointOfContacts",            "pointOfContact",            "Point of contacts", 
           ResponsibleParty[].class,
              Identification.class, "getSpatialRepresentationTypes", 
"spatialRepresentationTypes", "spatialRepresentationType", "Spatial 
representation types", SpatialRepresentationType[].class,
              Identification.class, "getSpatialResolutions",         
"spatialResolutions",         "spatialResolution",         "Spatial 
resolutions",          Resolution[].class,
-             Identification.class, "getTemporalResolutions",        
"temporalResolutions",        "temporalResolution",        "Temporal 
resolutions",         Duration[].class,
+             Identification.class, "getTemporalResolutions",        
"temporalResolutions",        "temporalResolution",        "Temporal 
resolutions",         TemporalAmount[].class,
              Identification.class, "getTopicCategories",            
"topicCategories",            "topicCategory",             "Topic categories",  
           TopicCategory[].class,
              Identification.class, "getExtents",                    "extents", 
                   "extent",                    "Extents",                      
Extent[].class,
              Identification.class, "getAdditionalDocumentations",   
"additionalDocumentations",   "additionalDocumentation",   "Additional 
documentations",    Citation[].class,
diff --cc geoapi/snapshot
index dfec1eb8ff,76470c0640..cfb43fa592
--- a/geoapi/snapshot
+++ b/geoapi/snapshot
@@@ -1,1 -1,1 +1,1 @@@
- Subproject commit dfec1eb8ff155019c23e359e0efce1071dab758b
 -Subproject commit 76470c06402aba756ce77dd98a0d36e4e2abcb14
++Subproject commit cfb43fa59293e86ad5e1088887674013f095fcde

Reply via email to