Return-Path:
X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io
Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io
Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183])
by cust-asf2.ponee.io (Postfix) with ESMTP id B3509200BCF
for ; Sat, 22 Oct 2016 09:18:49 +0200 (CEST)
Received: by cust-asf.ponee.io (Postfix)
id B1EF9160AEF; Sat, 22 Oct 2016 07:18:49 +0000 (UTC)
Delivered-To: archive-asf-public@cust-asf.ponee.io
Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
by cust-asf.ponee.io (Postfix) with SMTP id 5C1C4160B01
for ; Sat, 22 Oct 2016 09:18:47 +0200 (CEST)
Received: (qmail 17877 invoked by uid 500); 22 Oct 2016 07:18:46 -0000
Mailing-List: contact commits-help@zest.apache.org; run by ezmlm
Precedence: bulk
List-Help:
List-Unsubscribe:
List-Post:
List-Id:
Reply-To: dev@zest.apache.org
Delivered-To: mailing list commits@zest.apache.org
Received: (qmail 17747 invoked by uid 99); 22 Oct 2016 07:18:46 -0000
Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23)
by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 22 Oct 2016 07:18:46 +0000
Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33)
id 377AFF0DC2; Sat, 22 Oct 2016 07:18:46 +0000 (UTC)
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: niclas@apache.org
To: commits@zest.apache.org
Date: Sat, 22 Oct 2016 07:18:52 -0000
Message-Id: <69af19a14f054fb6a7ef8914e465e777@git.apache.org>
In-Reply-To: <905f92c311ff4327b45066692279f972@git.apache.org>
References: <905f92c311ff4327b45066692279f972@git.apache.org>
X-Mailer: ASF-Git Admin Mailer
Subject: [7/7] zest-java git commit: ZEST-181 : Replaced the use of 'long' as
a time and using java.time.Instant instead.
archived-at: Sat, 22 Oct 2016 07:18:49 -0000
ZEST-181 : Replaced the use of 'long' as a time and using java.time.Instant instead.
Project: http://git-wip-us.apache.org/repos/asf/zest-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/zest-java/commit/e030bd8a
Tree: http://git-wip-us.apache.org/repos/asf/zest-java/tree/e030bd8a
Diff: http://git-wip-us.apache.org/repos/asf/zest-java/diff/e030bd8a
Branch: refs/heads/develop
Commit: e030bd8a586efb272ad030a4762e18b24feee4c0
Parents: f37a0a0
Author: Niclas Hedhman
Authored: Sat Oct 22 15:14:38 2016 +0800
Committer: Niclas Hedhman
Committed: Sat Oct 22 15:14:38 2016 +0800
----------------------------------------------------------------------
.../zest/api/activation/ActivationEvent.java | 7 ++-
.../org/apache/zest/api/time/SystemTime.java | 24 ++++++++++
.../apache/zest/api/unitofwork/UnitOfWork.java | 3 +-
.../zest/api/unitofwork/UnitOfWorkFactory.java | 10 ++--
.../runtime/unitofwork/BuilderEntityState.java | 5 +-
.../runtime/unitofwork/ModuleUnitOfWork.java | 3 +-
.../unitofwork/UnitOfWorkFactoryMixin.java | 8 ++--
.../runtime/unitofwork/UnitOfWorkInstance.java | 7 +--
.../org/apache/zest/api/common/PluginTest.java | 6 ++-
.../org/apache/zest/spi/entity/EntityState.java | 5 +-
.../ConcurrentModificationCheckConcern.java | 9 ++--
.../DefaultEntityStoreUnitOfWork.java | 7 +--
.../spi/entitystore/EntityStateVersions.java | 7 ++-
.../zest/spi/entitystore/EntityStore.java | 3 +-
.../spi/entitystore/EntityStoreUnitOfWork.java | 3 +-
.../entitystore/helpers/DefaultEntityState.java | 9 ++--
.../entitystore/helpers/JSONEntityState.java | 7 +--
.../zest/spi/entitystore/helpers/JSONKeys.java | 4 +-
.../helpers/JSONMapEntityStoreMixin.java | 16 ++++---
.../helpers/MapEntityStoreMixin.java | 9 ++--
.../helpers/JSONManyAssociationStateTest.java | 5 +-
.../zest/spi/metrics/DefaultMetricsTest.java | 8 ++--
.../jclouds/JCloudsFilesystemTest.java | 3 +-
.../prefs/PreferencesEntityStoreMixin.java | 14 +++---
.../entitystore/sql/SQLEntityStoreMixin.java | 7 +--
.../sql/internal/DatabaseSQLService.java | 5 +-
.../DatabaseSQLServiceStatementsMixin.java | 9 ++--
.../sql/internal/SQLEntityState.java | 9 ++--
.../elasticsearch/ElasticSearchIndexer.java | 6 ++-
.../zest/index/rdf/RDFPerformanceTest.java | 50 ++++++++++----------
.../solr/internal/SolrEntityIndexerMixin.java | 2 +-
.../support/skeletons/AbstractSQLIndexing.java | 4 +-
.../skeletons/SQLCompatEntityStateWrapper.java | 5 +-
.../circuitbreaker/jmx/CircuitBreakerJMX.java | 6 ++-
.../fileconfig/FileConfigurationTest.java | 2 +-
.../logging/debug/records/DebugRecord.java | 3 +-
.../debug/service/DebuggingServiceMixin.java | 3 +-
.../library/logging/log/records/LogRecord.java | 3 +-
.../log/service/LoggingServiceMixin.java | 3 +-
.../logging/trace/AbstractTraceConcern.java | 15 +++---
.../logging/trace/TraceOnConsoleSideEffect.java | 14 +++---
.../logging/trace/records/TraceRecord.java | 6 ++-
.../logging/trace/service/TraceService.java | 6 ++-
.../trace/service/TraceServiceMixin.java | 30 ++++++------
.../rdf/entity/EntitySerializerTest.java | 4 +-
.../rest/server/api/ResourceValidity.java | 14 ++----
.../zest/library/rest/admin/EntityResource.java | 14 +++---
.../sample/forum/context/view/ViewPost.java | 2 +-
.../forum/domainevent/DomainEventValue.java | 3 +-
.../CompositeCreationPerformanceTest.java | 3 ++
50 files changed, 241 insertions(+), 169 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/api/src/main/java/org/apache/zest/api/activation/ActivationEvent.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/apache/zest/api/activation/ActivationEvent.java b/core/api/src/main/java/org/apache/zest/api/activation/ActivationEvent.java
index 3af6c93..553ede4 100644
--- a/core/api/src/main/java/org/apache/zest/api/activation/ActivationEvent.java
+++ b/core/api/src/main/java/org/apache/zest/api/activation/ActivationEvent.java
@@ -19,6 +19,9 @@
*/
package org.apache.zest.api.activation;
+import java.time.Instant;
+import org.apache.zest.api.time.SystemTime;
+
/**
* ActivationEvents are fired during activation and passivation of instances in Zest.
*/
@@ -29,13 +32,13 @@ public final class ActivationEvent
ACTIVATING, ACTIVATED, PASSIVATING, PASSIVATED
}
- private final long timestamp;
+ private final Instant timestamp;
private final Object source;
private final EventType type;
public ActivationEvent( Object source, EventType type )
{
- this.timestamp = System.currentTimeMillis();
+ this.timestamp = SystemTime.now();
this.source = source;
this.type = type;
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/api/src/main/java/org/apache/zest/api/time/SystemTime.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/apache/zest/api/time/SystemTime.java b/core/api/src/main/java/org/apache/zest/api/time/SystemTime.java
new file mode 100644
index 0000000..4601551
--- /dev/null
+++ b/core/api/src/main/java/org/apache/zest/api/time/SystemTime.java
@@ -0,0 +1,24 @@
+package org.apache.zest.api.time;
+
+import java.time.Clock;
+import java.time.Instant;
+
+public class SystemTime
+{
+ private static Clock defaultClock = Clock.systemUTC();
+
+ public static Clock getDefaultClock()
+ {
+ return defaultClock;
+ }
+
+ public static void setDefaultClock(Clock defaultClock)
+ {
+ SystemTime.defaultClock = defaultClock;
+ }
+
+ public static Instant now()
+ {
+ return Instant.now(defaultClock);
+ }
+}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWork.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWork.java b/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWork.java
index 309ca58..e792b8b 100644
--- a/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWork.java
+++ b/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWork.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.api.unitofwork;
+import java.time.Instant;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -104,7 +105,7 @@ public interface UnitOfWork extends MetaInfoHolder, AutoCloseable
*/
UnitOfWorkFactory unitOfWorkFactory();
- long currentTime();
+ Instant currentTime();
/**
* Get the Usecase for this UnitOfWork
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWorkFactory.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWorkFactory.java b/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWorkFactory.java
index 3a80115..3a1b00e 100644
--- a/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWorkFactory.java
+++ b/core/api/src/main/java/org/apache/zest/api/unitofwork/UnitOfWorkFactory.java
@@ -19,7 +19,9 @@
*/
package org.apache.zest.api.unitofwork;
+import java.time.Instant;
import org.apache.zest.api.entity.EntityComposite;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.usecase.Usecase;
/**
@@ -33,7 +35,7 @@ public interface UnitOfWorkFactory
* The UnitOfWork will use the default Usecase settings.
*
*
- * Current time will be set to System.currentTimeMillis();
+ * Current time will be set to {@link SystemTime#now()}
*
* @return a new UnitOfWork
*/
@@ -46,12 +48,12 @@ public interface UnitOfWorkFactory
*
* @return a new UnitOfWork
*/
- UnitOfWork newUnitOfWork( long currentTime );
+ UnitOfWork newUnitOfWork( Instant currentTime );
/**
* Create a new UnitOfWork for the given Usecase and associate it with the current thread.
*
- * Current time will be set to System.currentTimeMillis();
+ * Current time will be set to {@link SystemTime#now()}
*
* @param usecase the Usecase for this UnitOfWork
*
@@ -66,7 +68,7 @@ public interface UnitOfWorkFactory
*
* @return a new UnitOfWork
*/
- UnitOfWork newUnitOfWork( Usecase usecase, long currentTime );
+ UnitOfWork newUnitOfWork( Usecase usecase, Instant currentTime );
/**
* @return true if there is an active UnitOfWork associated with the executing thread
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/BuilderEntityState.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/BuilderEntityState.java b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/BuilderEntityState.java
index 23ddf0c..6591c4c 100644
--- a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/BuilderEntityState.java
+++ b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/BuilderEntityState.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.runtime.unitofwork;
+import java.time.Instant;
import java.util.HashMap;
import java.util.Map;
import org.apache.zest.api.common.QualifiedName;
@@ -62,9 +63,9 @@ public final class BuilderEntityState
}
@Override
- public long lastModified()
+ public Instant lastModified()
{
- return 0;
+ return Instant.MIN;
}
@Override
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/ModuleUnitOfWork.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/ModuleUnitOfWork.java b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/ModuleUnitOfWork.java
index d9a2d8a..222d959 100755
--- a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/ModuleUnitOfWork.java
+++ b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/ModuleUnitOfWork.java
@@ -20,6 +20,7 @@
package org.apache.zest.runtime.unitofwork;
+import java.time.Instant;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
@@ -136,7 +137,7 @@ public class ModuleUnitOfWork
}
@Override
- public long currentTime()
+ public Instant currentTime()
{
return uow.currentTime();
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkFactoryMixin.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkFactoryMixin.java b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkFactoryMixin.java
index 828807f..b3a32fb 100644
--- a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkFactoryMixin.java
+++ b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkFactoryMixin.java
@@ -20,11 +20,13 @@
package org.apache.zest.runtime.unitofwork;
+import java.time.Instant;
import java.util.Stack;
import org.apache.zest.api.composite.TransientBuilderFactory;
import org.apache.zest.api.entity.EntityComposite;
import org.apache.zest.api.injection.scope.Structure;
import org.apache.zest.api.metrics.MetricsProvider;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.unitofwork.UnitOfWork;
import org.apache.zest.api.unitofwork.UnitOfWorkFactory;
import org.apache.zest.api.usecase.Usecase;
@@ -48,7 +50,7 @@ public class UnitOfWorkFactoryMixin
}
@Override
- public UnitOfWork newUnitOfWork( long currentTime )
+ public UnitOfWork newUnitOfWork(Instant currentTime )
{
return newUnitOfWork( Usecase.DEFAULT, currentTime );
}
@@ -56,11 +58,11 @@ public class UnitOfWorkFactoryMixin
@Override
public UnitOfWork newUnitOfWork( Usecase usecase )
{
- return newUnitOfWork( usecase == null ? Usecase.DEFAULT : usecase, System.currentTimeMillis() );
+ return newUnitOfWork( usecase == null ? Usecase.DEFAULT : usecase, SystemTime.now() );
}
@Override
- public UnitOfWork newUnitOfWork( Usecase usecase, long currentTime )
+ public UnitOfWork newUnitOfWork( Usecase usecase, Instant currentTime )
{
UnitOfWorkInstance unitOfWorkInstance = new UnitOfWorkInstance( module, usecase, currentTime, metricsProvider() );
return tbf.newTransient( UnitOfWork.class, unitOfWorkInstance );
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkInstance.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkInstance.java b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkInstance.java
index bd125df..a294244 100755
--- a/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkInstance.java
+++ b/core/runtime/src/main/java/org/apache/zest/runtime/unitofwork/UnitOfWorkInstance.java
@@ -20,6 +20,7 @@
package org.apache.zest.runtime.unitofwork;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
@@ -82,7 +83,7 @@ public final class UnitOfWorkInstance
private final HashMap storeUnitOfWork = new HashMap<>();
private final ModuleSpi module;
private final Usecase usecase;
- private final long currentTime;
+ private final Instant currentTime;
private final MetricsProvider metrics;
private boolean open;
@@ -92,7 +93,7 @@ public final class UnitOfWorkInstance
private MetaInfo metaInfo;
private List callbacks;
- public UnitOfWorkInstance( ModuleSpi module, Usecase usecase, long currentTime, MetricsProvider metrics )
+ public UnitOfWorkInstance(ModuleSpi module, Usecase usecase, Instant currentTime, MetricsProvider metrics )
{
this.module = module;
this.usecase = usecase;
@@ -105,7 +106,7 @@ public final class UnitOfWorkInstance
startCapture();
}
- public long currentTime()
+ public Instant currentTime()
{
return currentTime;
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/runtime/src/test/java/org/apache/zest/api/common/PluginTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/zest/api/common/PluginTest.java b/core/runtime/src/test/java/org/apache/zest/api/common/PluginTest.java
index 7499c81..63c5a5d 100644
--- a/core/runtime/src/test/java/org/apache/zest/api/common/PluginTest.java
+++ b/core/runtime/src/test/java/org/apache/zest/api/common/PluginTest.java
@@ -23,6 +23,7 @@ package org.apache.zest.api.common;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
+import java.time.Instant;
import java.util.Collections;
import java.util.List;
import org.apache.zest.api.injection.scope.Service;
@@ -36,6 +37,7 @@ import org.apache.zest.api.service.ServiceImporter;
import org.apache.zest.api.service.ServiceImporterException;
import org.apache.zest.api.service.ServiceReference;
import org.apache.zest.api.structure.Application;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.bootstrap.ApplicationAssembler;
import org.apache.zest.bootstrap.ApplicationAssembly;
import org.apache.zest.bootstrap.ApplicationAssemblyFactory;
@@ -352,11 +354,11 @@ public class PluginTest
{
@Service
HelloWorld helloWorld;
- private long time;
+ private Instant time;
public SimonSaysMixin()
{
- time = System.currentTimeMillis();
+ time = SystemTime.now();
}
public String say( String phrase, String name )
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entity/EntityState.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entity/EntityState.java b/core/spi/src/main/java/org/apache/zest/spi/entity/EntityState.java
index 95b13f2..734f5d5 100644
--- a/core/spi/src/main/java/org/apache/zest/spi/entity/EntityState.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entity/EntityState.java
@@ -23,6 +23,7 @@ import java.time.Instant;
import org.apache.zest.api.common.QualifiedName;
import org.apache.zest.api.entity.EntityDescriptor;
import org.apache.zest.api.entity.EntityReference;
+import org.apache.zest.api.time.SystemTime;
/**
* State holder for Entities.
@@ -52,9 +53,9 @@ public interface EntityState
* If the underlying EntityStore does not support timestamping, then last modified
* must always be set to the current time.
*
- * @return last modified timestamp of the entity, as defined by System.currentTimeMillis()
+ * @return last modified timestamp of the entity, as defined by {@link SystemTime#now()}
*/
- long lastModified();
+ Instant lastModified();
/**
* Remove the entity represented by this EntityState when the unit of work is completed.
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/ConcurrentModificationCheckConcern.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/ConcurrentModificationCheckConcern.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/ConcurrentModificationCheckConcern.java
index e6f5be7..0729c68 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/ConcurrentModificationCheckConcern.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/ConcurrentModificationCheckConcern.java
@@ -20,6 +20,7 @@
package org.apache.zest.spi.entitystore;
+import java.time.Instant;
import java.util.HashSet;
import java.util.concurrent.locks.ReentrantReadWriteLock;
import org.apache.zest.api.ZestAPI;
@@ -53,7 +54,7 @@ public abstract class ConcurrentModificationCheckConcern
private ZestAPI api;
@Override
- public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, long currentTime )
+ public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, Instant currentTime )
{
final EntityStoreUnitOfWork uow = next.newUnitOfWork( module, usecase, currentTime );
return new ConcurrentCheckingEntityStoreUnitOfWork( uow, api.dereference( versions ), currentTime );
@@ -64,7 +65,7 @@ public abstract class ConcurrentModificationCheckConcern
{
private final EntityStoreUnitOfWork uow;
private EntityStateVersions versions;
- private long currentTime;
+ private Instant currentTime;
private HashSet loaded = new HashSet<>();
@@ -72,7 +73,7 @@ public abstract class ConcurrentModificationCheckConcern
public ConcurrentCheckingEntityStoreUnitOfWork( EntityStoreUnitOfWork uow,
EntityStateVersions versions,
- long currentTime
+ Instant currentTime
)
{
this.uow = uow;
@@ -87,7 +88,7 @@ public abstract class ConcurrentModificationCheckConcern
}
@Override
- public long currentTime()
+ public Instant currentTime()
{
return uow.currentTime();
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/DefaultEntityStoreUnitOfWork.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/DefaultEntityStoreUnitOfWork.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/DefaultEntityStoreUnitOfWork.java
index a915465..96e4927 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/DefaultEntityStoreUnitOfWork.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/DefaultEntityStoreUnitOfWork.java
@@ -20,6 +20,7 @@
package org.apache.zest.spi.entitystore;
+import java.time.Instant;
import java.util.HashMap;
import org.apache.zest.api.entity.EntityDescriptor;
import org.apache.zest.api.entity.EntityReference;
@@ -38,13 +39,13 @@ public final class DefaultEntityStoreUnitOfWork
private String identity;
private HashMap states = new HashMap<>();
private Usecase usecase;
- private long currentTime;
+ private Instant currentTime;
public DefaultEntityStoreUnitOfWork( ModuleDescriptor module,
EntityStoreSPI entityStoreSPI,
String identity,
Usecase usecase,
- long currentTime
+ Instant currentTime
)
{
this.module = module;
@@ -61,7 +62,7 @@ public final class DefaultEntityStoreUnitOfWork
}
@Override
- public long currentTime()
+ public Instant currentTime()
{
return currentTime;
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStateVersions.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStateVersions.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStateVersions.java
index 790af5e..d1913b7 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStateVersions.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStateVersions.java
@@ -20,6 +20,7 @@
package org.apache.zest.spi.entitystore;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -27,11 +28,9 @@ import java.util.WeakHashMap;
import org.apache.zest.api.entity.EntityReference;
import org.apache.zest.api.injection.scope.This;
import org.apache.zest.api.mixin.Mixins;
-import org.apache.zest.api.structure.ModuleDescriptor;
import org.apache.zest.api.usecase.Usecase;
import org.apache.zest.spi.entity.EntityState;
import org.apache.zest.spi.entity.EntityStatus;
-import org.apache.zest.spi.module.ModuleSpi;
/**
* Entity versions state.
@@ -43,7 +42,7 @@ public interface EntityStateVersions
void rememberVersion( EntityReference identity, String version );
- void checkForConcurrentModification( Iterable loaded, long currentTime )
+ void checkForConcurrentModification( Iterable loaded, Instant currentTime )
throws ConcurrentEntityStateModificationException;
/**
@@ -74,7 +73,7 @@ public interface EntityStateVersions
@Override
public synchronized void checkForConcurrentModification( Iterable loaded,
- long currentTime
+ Instant currentTime
)
throws ConcurrentEntityStateModificationException
{
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStore.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStore.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStore.java
index 7fbc4ee..71752b0 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStore.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStore.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.spi.entitystore;
+import java.time.Instant;
import org.apache.zest.api.structure.ModuleDescriptor;
import org.apache.zest.api.usecase.Usecase;
import org.apache.zest.io.Input;
@@ -29,7 +30,7 @@ import org.apache.zest.spi.entity.EntityState;
*/
public interface EntityStore
{
- EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, long currentTime );
+ EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, Instant currentTime );
Input entityStates( ModuleDescriptor module );
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStoreUnitOfWork.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStoreUnitOfWork.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStoreUnitOfWork.java
index 712d86b..5342327 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStoreUnitOfWork.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/EntityStoreUnitOfWork.java
@@ -20,6 +20,7 @@
package org.apache.zest.spi.entitystore;
+import java.time.Instant;
import org.apache.zest.api.entity.EntityDescriptor;
import org.apache.zest.api.entity.EntityReference;
import org.apache.zest.api.structure.ModuleDescriptor;
@@ -33,7 +34,7 @@ public interface EntityStoreUnitOfWork
{
String identity();
- long currentTime();
+ Instant currentTime();
/**
* Create new EntityState for a given identity.
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/DefaultEntityState.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/DefaultEntityState.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/DefaultEntityState.java
index 3375670..2827a93 100644
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/DefaultEntityState.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/DefaultEntityState.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.spi.entitystore.helpers;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -42,7 +43,7 @@ public final class DefaultEntityState
private EntityStatus status;
private String version;
- private long lastModified;
+ private Instant lastModified;
private final EntityReference identity;
private final EntityDescriptor entityDescriptor;
@@ -51,7 +52,7 @@ public final class DefaultEntityState
private final Map> manyAssociations;
private final Map> namedAssociations;
- public DefaultEntityState( long currentTime,
+ public DefaultEntityState( Instant currentTime,
EntityReference identity,
EntityDescriptor entityDescriptor
)
@@ -68,7 +69,7 @@ public final class DefaultEntityState
}
public DefaultEntityState( String version,
- long lastModified,
+ Instant lastModified,
EntityReference identity,
EntityStatus status,
EntityDescriptor entityDescriptor,
@@ -97,7 +98,7 @@ public final class DefaultEntityState
}
@Override
- public long lastModified()
+ public Instant lastModified()
{
return lastModified;
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONEntityState.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONEntityState.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONEntityState.java
index 5f351d0..2878b76 100644
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONEntityState.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONEntityState.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.spi.entitystore.helpers;
+import java.time.Instant;
import org.apache.zest.api.common.QualifiedName;
import org.apache.zest.api.entity.EntityDescriptor;
import org.apache.zest.api.entity.EntityReference;
@@ -59,13 +60,13 @@ public final class JSONEntityState
private final EntityDescriptor entityDescriptor;
private EntityStatus status;
- private long lastModified;
+ private Instant lastModified;
private JSONObject state;
/* package */ JSONEntityState( ModuleDescriptor module,
ValueSerialization valueSerialization,
String version,
- long lastModified,
+ Instant lastModified,
EntityReference identity,
EntityStatus status,
EntityDescriptor entityDescriptor,
@@ -90,7 +91,7 @@ public final class JSONEntityState
}
@Override
- public long lastModified()
+ public Instant lastModified()
{
return lastModified;
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONKeys.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONKeys.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONKeys.java
index 86b5c37..6d3151a 100644
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONKeys.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONKeys.java
@@ -19,6 +19,8 @@
*/
package org.apache.zest.spi.entitystore.helpers;
+import org.apache.zest.api.time.SystemTime;
+
/**
* JSON keys for values in the stored data.
*/
@@ -41,7 +43,7 @@ public interface JSONKeys
*/
String VERSION = "version";
/**
- * When entity was last modified according to System.currentTimeMillis().
+ * When entity was last modified according to {@link SystemTime#now()}
*/
String MODIFIED = "modified";
/**
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONMapEntityStoreMixin.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONMapEntityStoreMixin.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONMapEntityStoreMixin.java
index 4ba7297..acfbeae 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONMapEntityStoreMixin.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/JSONMapEntityStoreMixin.java
@@ -25,6 +25,7 @@ import java.io.ObjectInput;
import java.io.ObjectOutput;
import java.io.Reader;
import java.io.Writer;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@@ -138,7 +139,7 @@ public class JSONMapEntityStoreMixin
// EntityStore
@Override
- public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecaseMetaInfo, long currentTime )
+ public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecaseMetaInfo, Instant currentTime )
{
return new DefaultEntityStoreUnitOfWork( module, entityStoreSpi, newUnitOfWorkId(), usecaseMetaInfo, currentTime );
}
@@ -158,7 +159,7 @@ public class JSONMapEntityStoreMixin
state.put( JSONKeys.APPLICATION_VERSION, application.version() );
state.put( JSONKeys.TYPE, entityDescriptor.types().findFirst().get().getName() );
state.put( JSONKeys.VERSION, unitOfWork.identity() );
- state.put( JSONKeys.MODIFIED, unitOfWork.currentTime() );
+ state.put( JSONKeys.MODIFIED, unitOfWork.currentTime().toEpochMilli() );
state.put( JSONKeys.PROPERTIES, new JSONObject() );
state.put( JSONKeys.ASSOCIATIONS, new JSONObject() );
state.put( JSONKeys.MANY_ASSOCIATIONS, new JSONObject() );
@@ -406,14 +407,14 @@ public class JSONMapEntityStoreMixin
return uuid + Integer.toHexString( count++ );
}
- protected void writeEntityState( JSONEntityState state, Writer writer, String identity, long lastModified )
+ protected void writeEntityState( JSONEntityState state, Writer writer, String identity, Instant lastModified )
throws EntityStoreException
{
try
{
JSONObject jsonState = state.state();
jsonState.put( JSONKeys.VERSION, identity );
- jsonState.put( JSONKeys.MODIFIED, lastModified );
+ jsonState.put( JSONKeys.MODIFIED, lastModified.toEpochMilli() );
writer.append( jsonState.toString() );
}
catch( JSONException | IOException e )
@@ -431,7 +432,7 @@ public class JSONMapEntityStoreMixin
EntityStatus status = EntityStatus.LOADED;
String version = jsonObject.getString( JSONKeys.VERSION );
- long modified = jsonObject.getLong( JSONKeys.MODIFIED );
+ Instant modified = Instant.ofEpochMilli(jsonObject.getLong( JSONKeys.MODIFIED ));
String identity = jsonObject.getString( JSONKeys.IDENTITY );
// Check if NamedAssociation is supported
@@ -495,7 +496,7 @@ public class JSONMapEntityStoreMixin
}
}
- private EntityState fetchCachedState( EntityReference identity, ModuleDescriptor module, long currentTime )
+ private EntityState fetchCachedState( EntityReference identity, ModuleDescriptor module, Instant currentTime )
{
CacheState cacheState = cache.get( identity.identity() );
if( cacheState != null )
@@ -505,7 +506,8 @@ public class JSONMapEntityStoreMixin
{
String type = data.getString( JSONKeys.TYPE );
EntityDescriptor entityDescriptor = module.entityDescriptor( type );
- return new JSONEntityState( module, valueSerialization, data.getString( JSONKeys.VERSION ), data.getLong( JSONKeys.MODIFIED ), identity, EntityStatus.LOADED, entityDescriptor, data );
+ Instant lastModified = Instant.ofEpochMilli(data.getLong(JSONKeys.MODIFIED));
+ return new JSONEntityState( module, valueSerialization, data.getString( JSONKeys.VERSION ), lastModified, identity, EntityStatus.LOADED, entityDescriptor, data );
}
catch( JSONException e )
{
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/MapEntityStoreMixin.java
----------------------------------------------------------------------
diff --git a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/MapEntityStoreMixin.java b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/MapEntityStoreMixin.java
index adaa340..37b349e 100755
--- a/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/MapEntityStoreMixin.java
+++ b/core/spi/src/main/java/org/apache/zest/spi/entitystore/helpers/MapEntityStoreMixin.java
@@ -22,6 +22,7 @@ package org.apache.zest.spi.entitystore.helpers;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -108,7 +109,7 @@ public class MapEntityStoreMixin
// EntityStore
@Override
- public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecaseMetaInfo, long currentTime )
+ public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecaseMetaInfo, Instant currentTime )
{
return new DefaultEntityStoreUnitOfWork( module, entityStoreSpi, newUnitOfWorkId(), usecaseMetaInfo, currentTime );
}
@@ -292,7 +293,7 @@ public class MapEntityStoreMixin
return uuid + Integer.toHexString( count++ );
}
- protected void writeEntityState( DefaultEntityState state, Writer writer, String version, long lastModified )
+ protected void writeEntityState( DefaultEntityState state, Writer writer, String version, Instant lastModified )
throws EntityStoreException
{
try
@@ -303,7 +304,7 @@ public class MapEntityStoreMixin
key( JSONKeys.APPLICATION_VERSION ).value( application.version() ).
key( JSONKeys.TYPE ).value( state.entityDescriptor().types().findFirst().get().getName() ).
key( JSONKeys.VERSION ).value( version ).
- key( JSONKeys.MODIFIED ).value( lastModified ).
+ key( JSONKeys.MODIFIED ).value( lastModified.toEpochMilli() ).
key( JSONKeys.PROPERTIES ).object();
EntityDescriptor entityType = state.entityDescriptor();
entityType.state().properties().forEach( persistentProperty -> {
@@ -387,7 +388,7 @@ public class MapEntityStoreMixin
final EntityStatus[] status = { EntityStatus.LOADED };
String version = jsonObject.getString( JSONKeys.VERSION );
- long modified = jsonObject.getLong( JSONKeys.MODIFIED );
+ Instant modified = Instant.ofEpochMilli(jsonObject.getLong( JSONKeys.MODIFIED ));
String identity = jsonObject.getString( JSONKeys.IDENTITY );
// Check if version is correct
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/test/java/org/apache/zest/spi/entitystore/helpers/JSONManyAssociationStateTest.java
----------------------------------------------------------------------
diff --git a/core/spi/src/test/java/org/apache/zest/spi/entitystore/helpers/JSONManyAssociationStateTest.java b/core/spi/src/test/java/org/apache/zest/spi/entitystore/helpers/JSONManyAssociationStateTest.java
index a0c2dd3..3699cf6 100644
--- a/core/spi/src/test/java/org/apache/zest/spi/entitystore/helpers/JSONManyAssociationStateTest.java
+++ b/core/spi/src/test/java/org/apache/zest/spi/entitystore/helpers/JSONManyAssociationStateTest.java
@@ -21,6 +21,7 @@ package org.apache.zest.spi.entitystore.helpers;
import java.util.List;
import java.util.function.Function;
+import org.apache.zest.api.time.SystemTime;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
@@ -51,7 +52,7 @@ public class JSONManyAssociationStateTest
JSONEntityState entityState = new JSONEntityState( null,
null,
"0",
- System.currentTimeMillis(),
+ SystemTime.now(),
EntityReference.parseEntityReference( "123" ),
EntityStatus.NEW,
null,
@@ -77,7 +78,7 @@ public class JSONManyAssociationStateTest
JSONEntityState entityState = new JSONEntityState( null,
null,
"0",
- System.currentTimeMillis(),
+ SystemTime.now(),
EntityReference.parseEntityReference( "123" ),
EntityStatus.NEW,
null,
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/core/spi/src/test/java/org/apache/zest/spi/metrics/DefaultMetricsTest.java
----------------------------------------------------------------------
diff --git a/core/spi/src/test/java/org/apache/zest/spi/metrics/DefaultMetricsTest.java b/core/spi/src/test/java/org/apache/zest/spi/metrics/DefaultMetricsTest.java
index e22f76a..a92d526 100644
--- a/core/spi/src/test/java/org/apache/zest/spi/metrics/DefaultMetricsTest.java
+++ b/core/spi/src/test/java/org/apache/zest/spi/metrics/DefaultMetricsTest.java
@@ -20,7 +20,9 @@
package org.apache.zest.spi.metrics;
+import java.time.Instant;
import java.util.concurrent.TimeUnit;
+import org.apache.zest.api.time.SystemTime;
import org.junit.Test;
import org.apache.zest.api.metrics.MetricsCounter;
import org.apache.zest.api.metrics.MetricsCounterFactory;
@@ -55,12 +57,12 @@ public class DefaultMetricsTest
{
MetricsProvider underTest = new MetricsProviderAdapter();
MetricsGaugeFactory factory = underTest.createFactory( MetricsGaugeFactory.class );
- MetricsGauge test = factory.registerGauge( getClass(), "test", new MetricsGauge()
+ MetricsGauge test = factory.registerGauge( getClass(), "test", new MetricsGauge()
{
@Override
- public Long value()
+ public Instant value()
{
- return System.currentTimeMillis();
+ return SystemTime.now();
}
} );
assertNull( test.value() );
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/entitystore-jclouds/src/test/java/org/apache/zest/entitystore/jclouds/JCloudsFilesystemTest.java
----------------------------------------------------------------------
diff --git a/extensions/entitystore-jclouds/src/test/java/org/apache/zest/entitystore/jclouds/JCloudsFilesystemTest.java b/extensions/entitystore-jclouds/src/test/java/org/apache/zest/entitystore/jclouds/JCloudsFilesystemTest.java
index 08a1499..584cb4a 100644
--- a/extensions/entitystore-jclouds/src/test/java/org/apache/zest/entitystore/jclouds/JCloudsFilesystemTest.java
+++ b/extensions/entitystore-jclouds/src/test/java/org/apache/zest/entitystore/jclouds/JCloudsFilesystemTest.java
@@ -22,6 +22,7 @@ package org.apache.zest.entitystore.jclouds;
import java.util.HashMap;
import java.util.Map;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.entitystore.jclouds.assembly.JCloudsEntityStoreAssembler;
import org.jclouds.filesystem.reference.FilesystemConstants;
import org.junit.AfterClass;
@@ -48,7 +49,7 @@ public class JCloudsFilesystemTest
JCloudsMapEntityStoreConfiguration defaults = config.forMixin( JCloudsMapEntityStoreConfiguration.class ).declareDefaults();
defaults.provider().set( "filesystem" );
Map props = new HashMap();
- props.put( FilesystemConstants.PROPERTY_BASEDIR, "build/tmp/" + getClass().getPackage().getName() + "/es-jclouds-" + System.currentTimeMillis() );
+ props.put( FilesystemConstants.PROPERTY_BASEDIR, "build/tmp/" + getClass().getPackage().getName() + "/es-jclouds-" + SystemTime.now().toEpochMilli() );
defaults.properties().set( props );
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/entitystore-preferences/src/main/java/org/apache/zest/entitystore/prefs/PreferencesEntityStoreMixin.java
----------------------------------------------------------------------
diff --git a/extensions/entitystore-preferences/src/main/java/org/apache/zest/entitystore/prefs/PreferencesEntityStoreMixin.java b/extensions/entitystore-preferences/src/main/java/org/apache/zest/entitystore/prefs/PreferencesEntityStoreMixin.java
index 75ae80d..a540c1e 100755
--- a/extensions/entitystore-preferences/src/main/java/org/apache/zest/entitystore/prefs/PreferencesEntityStoreMixin.java
+++ b/extensions/entitystore-preferences/src/main/java/org/apache/zest/entitystore/prefs/PreferencesEntityStoreMixin.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.entitystore.prefs;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -43,13 +44,14 @@ import org.apache.zest.api.service.ServiceDescriptor;
import org.apache.zest.api.service.qualifier.Tagged;
import org.apache.zest.api.structure.Application;
import org.apache.zest.api.structure.ModuleDescriptor;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.type.CollectionType;
import org.apache.zest.api.type.EnumType;
import org.apache.zest.api.type.MapType;
import org.apache.zest.api.type.ValueCompositeType;
import org.apache.zest.api.type.ValueType;
-import org.apache.zest.api.unitofwork.NoSuchEntityTypeException;
import org.apache.zest.api.unitofwork.NoSuchEntityException;
+import org.apache.zest.api.unitofwork.NoSuchEntityTypeException;
import org.apache.zest.api.usecase.Usecase;
import org.apache.zest.api.usecase.UsecaseBuilder;
import org.apache.zest.api.value.ValueSerialization;
@@ -168,7 +170,7 @@ public class PreferencesEntityStoreMixin
}
@Override
- public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, long currentTime )
+ public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, Instant currentTime )
{
return new DefaultEntityStoreUnitOfWork( module, entityStoreSpi, newUnitOfWorkId(), usecase, currentTime );
}
@@ -191,7 +193,7 @@ public class PreferencesEntityStoreMixin
UsecaseBuilder builder = UsecaseBuilder.buildUsecase( "zest.entitystore.preferences.visit" );
Usecase visitUsecase = builder.withMetaInfo( CacheOptions.NEVER ).newUsecase();
final EntityStoreUnitOfWork uow =
- newUnitOfWork( module, visitUsecase, System.currentTimeMillis() );
+ newUnitOfWork( module, visitUsecase, SystemTime.now() );
try
{
@@ -414,7 +416,7 @@ public class PreferencesEntityStoreMixin
} );
return new DefaultEntityState( entityPrefs.get( "version", "" ),
- entityPrefs.getLong( "modified", unitOfWork.currentTime() ),
+ Instant.ofEpochMilli(entityPrefs.getLong( "modified", unitOfWork.currentTime().toEpochMilli() )),
identity,
status,
entityDescriptor,
@@ -499,7 +501,7 @@ public class PreferencesEntityStoreMixin
protected void writeEntityState( DefaultEntityState state,
Preferences entityPrefs,
String identity,
- long lastModified
+ Instant lastModified
)
throws EntityStoreException
{
@@ -508,7 +510,7 @@ public class PreferencesEntityStoreMixin
// Store into Preferences API
entityPrefs.put( "type", state.entityDescriptor().types().findFirst().get().getName() );
entityPrefs.put( "version", identity );
- entityPrefs.putLong( "modified", lastModified );
+ entityPrefs.putLong( "modified", lastModified.toEpochMilli() );
// Properties
Preferences propsPrefs = entityPrefs.node( "properties" );
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/SQLEntityStoreMixin.java
----------------------------------------------------------------------
diff --git a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/SQLEntityStoreMixin.java b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/SQLEntityStoreMixin.java
index a39a4a8..c541621 100755
--- a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/SQLEntityStoreMixin.java
+++ b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/SQLEntityStoreMixin.java
@@ -28,6 +28,7 @@ import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
+import java.time.Instant;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -270,7 +271,7 @@ public class SQLEntityStoreMixin
}
@Override
- public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, long currentTime )
+ public EntityStoreUnitOfWork newUnitOfWork( ModuleDescriptor module, Usecase usecase, Instant currentTime )
{
return new DefaultEntityStoreUnitOfWork( module, entityStoreSPI, newUnitOfWorkId(), usecase, currentTime );
}
@@ -358,7 +359,7 @@ public class SQLEntityStoreMixin
final EntityStatus[] status = { EntityStatus.LOADED };
String version = jsonObject.getString( JSONKeys.VERSION );
- long modified = jsonObject.getLong( JSONKeys.MODIFIED );
+ Instant modified = Instant.ofEpochMilli(jsonObject.getLong( JSONKeys.MODIFIED ));
String identity = jsonObject.getString( JSONKeys.IDENTITY );
// Check if version is correct
@@ -552,7 +553,7 @@ public class SQLEntityStoreMixin
key( JSONKeys.APPLICATION_VERSION ).value( application.version() ).
key( JSONKeys.TYPE ).value( state.entityDescriptor().types().findFirst().get().getName() ).
key( JSONKeys.VERSION ).value( version ).
- key( JSONKeys.MODIFIED ).value( state.lastModified() ).
+ key( JSONKeys.MODIFIED ).value( state.lastModified().toEpochMilli() ).
key( JSONKeys.PROPERTIES ).object();
state.entityDescriptor().state().properties().forEach( persistentProperty -> {
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLService.java
----------------------------------------------------------------------
diff --git a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLService.java b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLService.java
index 82bed93..1723e33 100644
--- a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLService.java
+++ b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLService.java
@@ -24,6 +24,7 @@ import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
+import java.time.Instant;
import org.apache.zest.api.entity.EntityReference;
import org.apache.zest.api.service.ServiceComposite;
@@ -108,10 +109,10 @@ public interface DatabaseSQLService
void populateGetAllEntitiesStatement( PreparedStatement ps )
throws SQLException;
- void populateInsertEntityStatement( PreparedStatement ps, EntityReference ref, String entity, Long lastModified )
+ void populateInsertEntityStatement( PreparedStatement ps, EntityReference ref, String entity, Instant lastModified )
throws SQLException;
- void populateUpdateEntityStatement( PreparedStatement ps, Long entityPK, Long entityOptimisticLock, EntityReference ref, String entity, Long lastModified )
+ void populateUpdateEntityStatement( PreparedStatement ps, Long entityPK, Long entityOptimisticLock, EntityReference ref, String entity, Instant lastModified )
throws SQLException;
void populateRemoveEntityStatement( PreparedStatement ps, Long entityPK, EntityReference ref )
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLServiceStatementsMixin.java
----------------------------------------------------------------------
diff --git a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLServiceStatementsMixin.java b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLServiceStatementsMixin.java
index 5765196..a755c19 100644
--- a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLServiceStatementsMixin.java
+++ b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/DatabaseSQLServiceStatementsMixin.java
@@ -22,6 +22,7 @@ package org.apache.zest.entitystore.sql.internal;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
+import java.time.Instant;
import org.apache.zest.api.entity.EntityReference;
import org.apache.zest.api.injection.scope.This;
@@ -88,12 +89,12 @@ public abstract class DatabaseSQLServiceStatementsMixin
}
@Override
- public void populateInsertEntityStatement( PreparedStatement ps, EntityReference ref, String entity, Long lastModified )
+ public void populateInsertEntityStatement( PreparedStatement ps, EntityReference ref, String entity, Instant lastModified )
throws SQLException
{
ps.setString( 1, ref.identity() );
ps.setString( 2, entity );
- ps.setLong( 3, lastModified );
+ ps.setLong( 3, lastModified.toEpochMilli() );
}
@Override
@@ -104,12 +105,12 @@ public abstract class DatabaseSQLServiceStatementsMixin
}
@Override
- public void populateUpdateEntityStatement( PreparedStatement ps, Long entityPK, Long entityOptimisticLock, EntityReference ref, String entity, Long lastModified )
+ public void populateUpdateEntityStatement( PreparedStatement ps, Long entityPK, Long entityOptimisticLock, EntityReference ref, String entity, Instant lastModified )
throws SQLException
{
ps.setLong( 1, entityOptimisticLock + 1 );
ps.setString( 2, entity );
- ps.setLong( 3, lastModified );
+ ps.setLong( 3, lastModified.toEpochMilli() );
ps.setLong( 4, entityPK );
ps.setLong( 5, entityOptimisticLock );
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/SQLEntityState.java
----------------------------------------------------------------------
diff --git a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/SQLEntityState.java b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/SQLEntityState.java
index 4634b43..3466cbc 100644
--- a/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/SQLEntityState.java
+++ b/extensions/entitystore-sql/src/main/java/org/apache/zest/entitystore/sql/internal/SQLEntityState.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.entitystore.sql.internal;
+import java.time.Instant;
import org.apache.zest.api.common.QualifiedName;
import org.apache.zest.api.entity.EntityDescriptor;
import org.apache.zest.api.entity.EntityReference;
@@ -33,11 +34,11 @@ public interface SQLEntityState
extends EntityState
{
- public Long getEntityPK();
+ Long getEntityPK();
- public Long getEntityOptimisticLock();
+ Long getEntityOptimisticLock();
- public DefaultEntityState getDefaultEntityState();
+ DefaultEntityState getDefaultEntityState();
@SuppressWarnings( "PublicInnerClass" )
public final class DefaultSQLEntityState
@@ -129,7 +130,7 @@ public interface SQLEntityState
}
@Override
- public long lastModified()
+ public Instant lastModified()
{
return state.lastModified();
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/indexing-elasticsearch/src/main/java/org/apache/zest/index/elasticsearch/ElasticSearchIndexer.java
----------------------------------------------------------------------
diff --git a/extensions/indexing-elasticsearch/src/main/java/org/apache/zest/index/elasticsearch/ElasticSearchIndexer.java b/extensions/indexing-elasticsearch/src/main/java/org/apache/zest/index/elasticsearch/ElasticSearchIndexer.java
index f51d512..e05081b 100755
--- a/extensions/indexing-elasticsearch/src/main/java/org/apache/zest/index/elasticsearch/ElasticSearchIndexer.java
+++ b/extensions/indexing-elasticsearch/src/main/java/org/apache/zest/index/elasticsearch/ElasticSearchIndexer.java
@@ -31,6 +31,7 @@ import org.apache.zest.api.injection.scope.This;
import org.apache.zest.api.mixin.Mixins;
import org.apache.zest.api.service.qualifier.Tagged;
import org.apache.zest.api.structure.ModuleDescriptor;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.type.ValueType;
import org.apache.zest.api.usecase.UsecaseBuilder;
import org.apache.zest.api.util.Classes;
@@ -100,8 +101,9 @@ public interface ElasticSearchIndexer
}
EntityStoreUnitOfWork uow = entityStore.newUnitOfWork(
- module, UsecaseBuilder.newUsecase( "Load associations for indexing" ),
- System.currentTimeMillis()
+ module,
+ UsecaseBuilder.newUsecase( "Load associations for indexing" ),
+ SystemTime.now()
);
// Bulk index request builder
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/indexing-rdf/src/test/java/org/apache/zest/index/rdf/RDFPerformanceTest.java
----------------------------------------------------------------------
diff --git a/extensions/indexing-rdf/src/test/java/org/apache/zest/index/rdf/RDFPerformanceTest.java b/extensions/indexing-rdf/src/test/java/org/apache/zest/index/rdf/RDFPerformanceTest.java
index aef84ee..15a4d7a 100644
--- a/extensions/indexing-rdf/src/test/java/org/apache/zest/index/rdf/RDFPerformanceTest.java
+++ b/extensions/indexing-rdf/src/test/java/org/apache/zest/index/rdf/RDFPerformanceTest.java
@@ -25,15 +25,19 @@ package org.apache.zest.index.rdf;
*/
import java.io.File;
-import org.junit.Ignore;
-import org.junit.Test;
+import java.time.Duration;
+import java.time.Instant;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import org.apache.zest.api.association.ManyAssociation;
import org.apache.zest.api.common.UseDefaults;
import org.apache.zest.api.common.Visibility;
import org.apache.zest.api.entity.EntityComposite;
-import org.apache.zest.api.association.ManyAssociation;
import org.apache.zest.api.property.Property;
import org.apache.zest.api.query.Query;
import org.apache.zest.api.query.QueryExpressions;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.unitofwork.UnitOfWork;
import org.apache.zest.bootstrap.Assembler;
import org.apache.zest.bootstrap.AssemblyException;
@@ -44,15 +48,13 @@ import org.apache.zest.library.rdf.repository.NativeConfiguration;
import org.apache.zest.spi.query.IndexExporter;
import org.apache.zest.test.AbstractZestTest;
import org.apache.zest.test.EntityTestAssembler;
+import org.apache.zest.test.util.DelTreeAfter;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.junit.Rule;
-import org.apache.zest.test.util.DelTreeAfter;
-
public class RDFPerformanceTest extends AbstractZestTest
{
private static final Logger LOG = LoggerFactory.getLogger( RDFPerformanceTest.class );
@@ -163,21 +165,21 @@ public class RDFPerformanceTest extends AbstractZestTest
private void performTest( int howMany ) throws Exception
{
- long startTest = System.currentTimeMillis();
+ Instant startTest = SystemTime.now();
UnitOfWork creatingUOW = this.unitOfWorkFactory.newUnitOfWork();
- Long startingTime = System.currentTimeMillis();
+ Instant startingTime = SystemTime.now();
List entities = this.doCreate( howMany );
- LOG.info( "Time to create " + howMany + " entities (ms): " + (System.currentTimeMillis() - startingTime) );
+ LOG.info( "Time to create " + howMany + " entities: " + Duration.between(startingTime, SystemTime.now() ) );
- startingTime = System.currentTimeMillis();
+ startingTime = SystemTime.now();
creatingUOW.complete();
- LOG.info( "Time to complete creation uow (ms): " + (System.currentTimeMillis() - startingTime) );
+ LOG.info( "Time to complete creation uow: " + Duration.between(startingTime, SystemTime.now() ) );
List entityList = this.doList( howMany );
- startingTime = System.currentTimeMillis();
+ startingTime = SystemTime.now();
UnitOfWork uow = this.unitOfWorkFactory.newUnitOfWork();
for (int i = 0; i < 1000; i++)
{
@@ -186,23 +188,21 @@ public class RDFPerformanceTest extends AbstractZestTest
System.out.println(query.count());
}
- long endTest = System.currentTimeMillis();
- LOG.info( "Time to query " + howMany + " entities (ms): " + (endTest - startingTime) );
+ Instant endTest = SystemTime.now();
+ LOG.info( "Time to query " + howMany + " entities: " + Duration.between(startTest, endTest) );
UnitOfWork deletingUOW = this.unitOfWorkFactory.newUnitOfWork();
- startingTime = System.currentTimeMillis();
+ startingTime = SystemTime.now();
this.doRemoveAll( entityList );
// this.doRemove(200);
- LOG.info( "Time to delete " + howMany + " entities (ms): " + (System.currentTimeMillis() - startingTime) );
+ LOG.info( "Time to delete " + howMany + " entities: " + Duration.between(startingTime, SystemTime.now() ) );
- startingTime = System.currentTimeMillis();
+ startingTime = SystemTime.now();
deletingUOW.complete();
- endTest = System.currentTimeMillis();
-
- LOG.info( "time to complete deletion uow (ms): " + (endTest - startingTime) );
-
- LOG.info( "time to complete test (ms): " + (endTest - startTest) );
+ endTest = SystemTime.now();
+ LOG.info( "time to complete deletion uow: " + Duration.between(startingTime, endTest ) );
+ LOG.info( "time to complete test: " + Duration.between(startingTime, endTest ) );
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/indexing-solr/src/main/java/org/apache/zest/index/solr/internal/SolrEntityIndexerMixin.java
----------------------------------------------------------------------
diff --git a/extensions/indexing-solr/src/main/java/org/apache/zest/index/solr/internal/SolrEntityIndexerMixin.java b/extensions/indexing-solr/src/main/java/org/apache/zest/index/solr/internal/SolrEntityIndexerMixin.java
index 6f9d6f9..5eabfbc 100644
--- a/extensions/indexing-solr/src/main/java/org/apache/zest/index/solr/internal/SolrEntityIndexerMixin.java
+++ b/extensions/indexing-solr/src/main/java/org/apache/zest/index/solr/internal/SolrEntityIndexerMixin.java
@@ -159,7 +159,7 @@ public abstract class SolrEntityIndexerMixin
SolrInputDocument input = new SolrInputDocument();
input.addField( "id", entityState.identity().identity() );
input.addField( "type", entityState.entityDescriptor().types().findFirst().get().getName() );
- input.addField( "lastModified", new java.util.Date( entityState.lastModified() ) );
+ input.addField( "lastModified", java.util.Date.from( entityState.lastModified() ) );
for( Statement statement : graph )
{
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/AbstractSQLIndexing.java
----------------------------------------------------------------------
diff --git a/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/AbstractSQLIndexing.java b/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/AbstractSQLIndexing.java
index faa9aad..d8b7253 100644
--- a/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/AbstractSQLIndexing.java
+++ b/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/AbstractSQLIndexing.java
@@ -331,7 +331,7 @@ public abstract class AbstractSQLIndexing
throws SQLException
{
ps.setString( startingIndex, state.identity().identity() );
- ps.setTimestamp( startingIndex + 1, new Timestamp( state.lastModified() ) );
+ ps.setTimestamp( startingIndex + 1, Timestamp.from( state.lastModified() ) );
ps.setString( startingIndex + 2, state.version() );
ps.setString( startingIndex + 3, this._app.version() );
}
@@ -1006,7 +1006,7 @@ public abstract class AbstractSQLIndexing
// Update state
ps.setString( 1, state.identity().identity() );
- ps.setTimestamp( 2, new Timestamp( state.lastModified() ) );
+ ps.setTimestamp( 2, Timestamp.from( state.lastModified() ) );
ps.setString( 3, state.version() );
ps.setString( 4, this._app.version() );
ps.setLong( 5, entityPK );
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/SQLCompatEntityStateWrapper.java
----------------------------------------------------------------------
diff --git a/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/SQLCompatEntityStateWrapper.java b/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/SQLCompatEntityStateWrapper.java
index d35716c..3a42b55 100644
--- a/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/SQLCompatEntityStateWrapper.java
+++ b/extensions/indexing-sql/src/main/java/org/apache/zest/index/sql/support/skeletons/SQLCompatEntityStateWrapper.java
@@ -19,6 +19,7 @@
*/
package org.apache.zest.index.sql.support.skeletons;
+import java.time.Instant;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Stream;
@@ -46,7 +47,7 @@ import org.slf4j.LoggerFactory;
* This allows to disable unsupported properties indexing to prevent failures in the SQL Index/Query engine.
* When an unsupported Property is found it is logged at WARN level.
*/
-/* package */ class SQLCompatEntityStateWrapper
+class SQLCompatEntityStateWrapper
implements EntityState
{
private static final Logger LOGGER = LoggerFactory.getLogger( SQLCompatEntityStateWrapper.class.getName() );
@@ -108,7 +109,7 @@ import org.slf4j.LoggerFactory;
}
@Override
- public long lastModified()
+ public Instant lastModified()
{
return wrappedEntityState.lastModified();
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/circuitbreaker/src/main/java/org/apache/zest/library/circuitbreaker/jmx/CircuitBreakerJMX.java
----------------------------------------------------------------------
diff --git a/libraries/circuitbreaker/src/main/java/org/apache/zest/library/circuitbreaker/jmx/CircuitBreakerJMX.java b/libraries/circuitbreaker/src/main/java/org/apache/zest/library/circuitbreaker/jmx/CircuitBreakerJMX.java
index 32d7473..084dfb7 100644
--- a/libraries/circuitbreaker/src/main/java/org/apache/zest/library/circuitbreaker/jmx/CircuitBreakerJMX.java
+++ b/libraries/circuitbreaker/src/main/java/org/apache/zest/library/circuitbreaker/jmx/CircuitBreakerJMX.java
@@ -28,6 +28,7 @@ import javax.management.MBeanNotificationInfo;
import javax.management.Notification;
import javax.management.NotificationBroadcasterSupport;
import javax.management.ObjectName;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.library.circuitbreaker.CircuitBreaker;
/**
@@ -46,12 +47,13 @@ public class CircuitBreakerJMX
this.circuitBreaker = circuitBreaker;
circuitBreaker.addPropertyChangeListener(new PropertyChangeListener()
{
- long sequenceNr = System.currentTimeMillis();
+ long sequenceNr = SystemTime.now().toEpochMilli();
@Override
public void propertyChange(PropertyChangeEvent evt)
{
- Notification notification = new Notification(evt.getPropertyName(), mbeanObjectName, sequenceNr++, System.currentTimeMillis(), evt.getNewValue().toString());
+ long now = SystemTime.now().toEpochMilli();
+ Notification notification = new Notification(evt.getPropertyName(), mbeanObjectName, sequenceNr++, now, evt.getNewValue().toString());
sendNotification(notification);
}
});
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/fileconfig/src/test/java/org/apache/zest/library/fileconfig/FileConfigurationTest.java
----------------------------------------------------------------------
diff --git a/libraries/fileconfig/src/test/java/org/apache/zest/library/fileconfig/FileConfigurationTest.java b/libraries/fileconfig/src/test/java/org/apache/zest/library/fileconfig/FileConfigurationTest.java
index 70baf31..850bd83 100644
--- a/libraries/fileconfig/src/test/java/org/apache/zest/library/fileconfig/FileConfigurationTest.java
+++ b/libraries/fileconfig/src/test/java/org/apache/zest/library/fileconfig/FileConfigurationTest.java
@@ -57,7 +57,7 @@ public class FileConfigurationTest
public void testFileConfigurationOverride()
throws IOException, ActivationException, AssemblyException
{
- File testFile = File.createTempFile( FileConfigurationTest.class.getName(), "" + System.currentTimeMillis() );
+ File testFile = File.createTempFile( FileConfigurationTest.class.getName(), "tmp" );
final File confDir = testFile;
final File dataDir = testFile;
final File tempDir = testFile;
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/records/DebugRecord.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/records/DebugRecord.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/records/DebugRecord.java
index f47c9a0..c412bc8 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/records/DebugRecord.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/records/DebugRecord.java
@@ -21,6 +21,7 @@
package org.apache.zest.library.logging.debug.records;
import java.io.Serializable;
+import java.time.Instant;
import java.util.List;
import org.apache.zest.api.property.Property;
@@ -32,7 +33,7 @@ public interface DebugRecord
Property threadName();
- Property time();
+ Property time();
Property> parameters();
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/service/DebuggingServiceMixin.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/service/DebuggingServiceMixin.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/service/DebuggingServiceMixin.java
index cfc9395..5d8fd9c 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/service/DebuggingServiceMixin.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/debug/service/DebuggingServiceMixin.java
@@ -32,6 +32,7 @@ import org.apache.zest.api.entity.EntityComposite;
import org.apache.zest.api.injection.scope.Structure;
import org.apache.zest.api.injection.scope.This;
import org.apache.zest.api.service.ServiceComposite;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.unitofwork.ConcurrentEntityModificationException;
import org.apache.zest.api.unitofwork.UnitOfWork;
import org.apache.zest.api.unitofwork.UnitOfWorkCompletionException;
@@ -166,7 +167,7 @@ public class DebuggingServiceMixin
private void setStandardStuff( Composite composite, String message, DebugRecord state, List params )
{
- state.time().set( System.currentTimeMillis() );
+ state.time().set( SystemTime.now() );
state.message().set( message );
state.compositeTypeName().set( getCompositeName( composite ) );
state.threadName().set( Thread.currentThread().getName() );
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/log/records/LogRecord.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/log/records/LogRecord.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/log/records/LogRecord.java
index 03706b6..3de0dde 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/log/records/LogRecord.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/log/records/LogRecord.java
@@ -20,6 +20,7 @@
package org.apache.zest.library.logging.log.records;
import java.io.Serializable;
+import java.time.Instant;
import java.util.List;
import org.apache.zest.api.property.Property;
import org.apache.zest.library.logging.log.LogType;
@@ -36,7 +37,7 @@ public interface LogRecord
Property logtype();
- Property time();
+ Property time();
Property> parameters();
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/log/service/LoggingServiceMixin.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/log/service/LoggingServiceMixin.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/log/service/LoggingServiceMixin.java
index df59579..4431865 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/log/service/LoggingServiceMixin.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/log/service/LoggingServiceMixin.java
@@ -30,6 +30,7 @@ import org.apache.zest.api.entity.EntityBuilder;
import org.apache.zest.api.entity.EntityComposite;
import org.apache.zest.api.injection.scope.Structure;
import org.apache.zest.api.service.ServiceComposite;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.api.unitofwork.ConcurrentEntityModificationException;
import org.apache.zest.api.unitofwork.UnitOfWork;
import org.apache.zest.api.unitofwork.UnitOfWorkCompletionException;
@@ -158,7 +159,7 @@ public abstract class LoggingServiceMixin
LogRecord state, List params )
{
state.logtype().set( type );
- state.time().set( System.currentTimeMillis() );
+ state.time().set( SystemTime.now() );
state.category().set( category );
state.message().set( message );
state.compositeTypeName().set( getCompositeName( composite ) );
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/AbstractTraceConcern.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/AbstractTraceConcern.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/AbstractTraceConcern.java
index 1575ac8..c3860bf 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/AbstractTraceConcern.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/AbstractTraceConcern.java
@@ -22,12 +22,15 @@ package org.apache.zest.library.logging.trace;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
+import java.time.Duration;
+import java.time.Instant;
import org.apache.zest.api.ZestAPI;
import org.apache.zest.api.common.Optional;
import org.apache.zest.api.composite.Composite;
import org.apache.zest.api.concern.ConcernOf;
import org.apache.zest.api.injection.scope.Service;
import org.apache.zest.api.injection.scope.Structure;
+import org.apache.zest.api.time.SystemTime;
import org.apache.zest.library.logging.trace.service.TraceService;
@@ -51,19 +54,13 @@ public abstract class AbstractTraceConcern extends ConcernOf
{
boolean doTrace = traceService != null && doTrace();
Object result;
- long entryTime = 0;
- long timeStamp = 0;
+ Instant entryTime = SystemTime.now();;
try
{
- if( doTrace )
- {
- entryTime = System.currentTimeMillis();
- timeStamp = System.nanoTime();
- }
result = next.invoke( proxy, method, args );
if( doTrace )
{
- long duration = System.nanoTime() - timeStamp;
+ Duration duration = Duration.between(entryTime, SystemTime.now() );
traceService.traceSuccess( compositeType, api.dereference( thisComposite ), method, args, result, entryTime, duration );
}
}
@@ -71,7 +68,7 @@ public abstract class AbstractTraceConcern extends ConcernOf
{
if( doTrace )
{
- long duration = System.nanoTime() - timeStamp;
+ Duration duration = Duration.between(entryTime, SystemTime.now() );
Composite object = api.dereference( thisComposite );
traceService.traceException( compositeType, object, method, args, t, entryTime, duration );
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/TraceOnConsoleSideEffect.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/TraceOnConsoleSideEffect.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/TraceOnConsoleSideEffect.java
index 0ed54e1..6497810 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/TraceOnConsoleSideEffect.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/TraceOnConsoleSideEffect.java
@@ -22,6 +22,8 @@ package org.apache.zest.library.logging.trace;
import java.io.PrintStream;
import java.lang.reflect.Method;
+import java.time.Duration;
+import java.time.Instant;
import org.apache.zest.api.composite.Composite;
import org.apache.zest.api.sideeffect.SideEffectOf;
import org.apache.zest.library.logging.trace.service.TraceService;
@@ -36,23 +38,23 @@ public abstract class TraceOnConsoleSideEffect extends SideEffectOf threadName();
- Property entryTime();
+ Property entryTime();
- Property duration();
+ Property duration();
@Optional Property exception();
http://git-wip-us.apache.org/repos/asf/zest-java/blob/e030bd8a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/service/TraceService.java
----------------------------------------------------------------------
diff --git a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/service/TraceService.java b/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/service/TraceService.java
index 4f222c9..03184d8 100644
--- a/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/service/TraceService.java
+++ b/libraries/logging/src/main/java/org/apache/zest/library/logging/trace/service/TraceService.java
@@ -21,6 +21,8 @@
package org.apache.zest.library.logging.trace.service;
import java.lang.reflect.Method;
+import java.time.Duration;
+import java.time.Instant;
import org.apache.zest.api.common.Optional;
import org.apache.zest.api.composite.Composite;
@@ -28,8 +30,8 @@ public interface TraceService
{
int traceLevel();
- void traceSuccess( Class compositeType, Composite object, Method method, @Optional Object[] args, Object result, long entryTime, long durationNano );
+ void traceSuccess(Class compositeType, Composite object, Method method, @Optional Object[] args, Object result, Instant entryTime, Duration duration );
- void traceException( Class compositeType, Composite object, Method method, @Optional Object[] args, Throwable t, long entryTime, long durationNano );
+ void traceException( Class compositeType, Composite object, Method method, @Optional Object[] args, Throwable t, Instant entryTime, Duration duration );
}