From 036092d47077a38d38bffa3ac46d5f4b65585ec2 Mon Sep 17 00:00:00 2001
From: Robin Bygrave
Date: Fri, 6 May 2016 14:50:50 +1200
Subject: [PATCH] #694 - Refactor - Rename IdGenerator to PlatformIdGenerator
... with a view to support customer Id generators
---
.../com/avaje/ebean/config/dbplatform/DB2Platform.java | 4 ++--
.../avaje/ebean/config/dbplatform/DatabasePlatform.java | 2 +-
.../com/avaje/ebean/config/dbplatform/H2Platform.java | 4 ++--
.../com/avaje/ebean/config/dbplatform/HsqldbPlatform.java | 2 +-
.../com/avaje/ebean/config/dbplatform/MySqlPlatform.java | 4 ++--
.../com/avaje/ebean/config/dbplatform/OraclePlatform.java | 2 +-
.../{IdGenerator.java => PlatformIdGenerator.java} | 2 +-
.../avaje/ebean/config/dbplatform/PostgresPlatform.java | 2 +-
.../ebean/config/dbplatform/SequenceIdGenerator.java | 2 +-
.../config/dbplatform/SimpleSequenceIdGenerator.java | 2 +-
.../avaje/ebeaninternal/server/deploy/BeanDescriptor.java | 4 ++--
.../server/deploy/BeanDescriptorManager.java | 8 ++++----
.../server/deploy/meta/DeployBeanDescriptor.java | 8 ++++----
.../avaje/ebeaninternal/server/idgen/UuidIdGenerator.java | 6 ++----
14 files changed, 25 insertions(+), 27 deletions(-)
rename src/main/java/com/avaje/ebean/config/dbplatform/{IdGenerator.java => PlatformIdGenerator.java} (96%)
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/DB2Platform.java b/src/main/java/com/avaje/ebean/config/dbplatform/DB2Platform.java
index 906cb92d6..832ceb6a3 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/DB2Platform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/DB2Platform.java
@@ -34,8 +34,8 @@ public class DB2Platform extends DatabasePlatform {
* sequence values.
*/
@Override
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be,
- DataSource ds, String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be,
+ DataSource ds, String seqName, int batchSize) {
return new DB2SequenceIdGenerator(be, ds, seqName, batchSize);
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/DatabasePlatform.java b/src/main/java/com/avaje/ebean/config/dbplatform/DatabasePlatform.java
index 748d70976..6719dd879 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/DatabasePlatform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/DatabasePlatform.java
@@ -251,7 +251,7 @@ public class DatabasePlatform {
* @param seqName the name of the sequence
* @param batchSize the number of sequences that should be loaded
*/
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
return null;
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/H2Platform.java b/src/main/java/com/avaje/ebean/config/dbplatform/H2Platform.java
index e655d0d71..c406558d9 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/H2Platform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/H2Platform.java
@@ -39,8 +39,8 @@ public class H2Platform extends DatabasePlatform {
* sequence values.
*/
@Override
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds,
- String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds,
+ String seqName, int batchSize) {
return new H2SequenceIdGenerator(be, ds, seqName, batchSize);
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/HsqldbPlatform.java b/src/main/java/com/avaje/ebean/config/dbplatform/HsqldbPlatform.java
index 124b3a8e3..e34605142 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/HsqldbPlatform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/HsqldbPlatform.java
@@ -26,7 +26,7 @@ public class HsqldbPlatform extends DatabasePlatform {
}
@Override
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
return new H2SequenceIdGenerator(be, ds, seqName, batchSize);
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/MySqlPlatform.java b/src/main/java/com/avaje/ebean/config/dbplatform/MySqlPlatform.java
index 0917e2f00..d8812266a 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/MySqlPlatform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/MySqlPlatform.java
@@ -52,8 +52,8 @@ public class MySqlPlatform extends DatabasePlatform {
* Return null in case there is a sequence annotation.
*/
@Override
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be,
- DataSource ds, String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be,
+ DataSource ds, String seqName, int batchSize) {
return null;
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/OraclePlatform.java b/src/main/java/com/avaje/ebean/config/dbplatform/OraclePlatform.java
index ad8a8928c..a3be188ef 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/OraclePlatform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/OraclePlatform.java
@@ -54,7 +54,7 @@ public class OraclePlatform extends DatabasePlatform {
}
@Override
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
return new OracleSequenceIdGenerator(be, ds, seqName, batchSize);
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/IdGenerator.java b/src/main/java/com/avaje/ebean/config/dbplatform/PlatformIdGenerator.java
similarity index 96%
rename from src/main/java/com/avaje/ebean/config/dbplatform/IdGenerator.java
rename to src/main/java/com/avaje/ebean/config/dbplatform/PlatformIdGenerator.java
index d8d2171d5..08b427e23 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/IdGenerator.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/PlatformIdGenerator.java
@@ -11,7 +11,7 @@ import com.avaje.ebean.Transaction;
* actual insert.
*
*/
-public interface IdGenerator {
+public interface PlatformIdGenerator {
/**
* The name of the default UUID generator.
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/PostgresPlatform.java b/src/main/java/com/avaje/ebean/config/dbplatform/PostgresPlatform.java
index 0654dfc50..da1b842c9 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/PostgresPlatform.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/PostgresPlatform.java
@@ -84,7 +84,7 @@ public class PostgresPlatform extends DatabasePlatform {
* Create a Postgres specific sequence IdGenerator.
*/
@Override
- public IdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
+ public PlatformIdGenerator createSequenceIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) {
return new PostgresSequenceIdGenerator(be, ds, seqName, batchSize);
}
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/SequenceIdGenerator.java b/src/main/java/com/avaje/ebean/config/dbplatform/SequenceIdGenerator.java
index 6de3efae2..ef6d77926 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/SequenceIdGenerator.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/SequenceIdGenerator.java
@@ -17,7 +17,7 @@ import org.slf4j.LoggerFactory;
/**
* Database sequence based IdGenerator.
*/
-public abstract class SequenceIdGenerator implements IdGenerator {
+public abstract class SequenceIdGenerator implements PlatformIdGenerator {
private static final Logger logger = LoggerFactory.getLogger(SequenceIdGenerator.class);
diff --git a/src/main/java/com/avaje/ebean/config/dbplatform/SimpleSequenceIdGenerator.java b/src/main/java/com/avaje/ebean/config/dbplatform/SimpleSequenceIdGenerator.java
index 479b3c637..ead28d3fc 100644
--- a/src/main/java/com/avaje/ebean/config/dbplatform/SimpleSequenceIdGenerator.java
+++ b/src/main/java/com/avaje/ebean/config/dbplatform/SimpleSequenceIdGenerator.java
@@ -18,7 +18,7 @@ import org.slf4j.LoggerFactory;
* One which batch requests sequence Id's would be better for performance.
*
*/
-public class SimpleSequenceIdGenerator implements IdGenerator {
+public class SimpleSequenceIdGenerator implements PlatformIdGenerator {
private static final Logger logger = LoggerFactory.getLogger(SimpleSequenceIdGenerator.class);
diff --git a/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptor.java b/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptor.java
index 7d7234451..dbf5f99f9 100644
--- a/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptor.java
+++ b/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptor.java
@@ -16,7 +16,7 @@ import com.avaje.ebean.bean.PersistenceContext;
import com.avaje.ebean.bean.PersistenceContextUtil;
import com.avaje.ebean.config.EncryptKey;
import com.avaje.ebean.config.ServerConfig;
-import com.avaje.ebean.config.dbplatform.IdGenerator;
+import com.avaje.ebean.config.dbplatform.PlatformIdGenerator;
import com.avaje.ebean.config.dbplatform.IdType;
import com.avaje.ebean.event.BeanFindController;
import com.avaje.ebean.event.BeanPersistController;
@@ -152,7 +152,7 @@ public class BeanDescriptor implements MetaBeanInfo, BeanType {
private final boolean idTypePlatformDefault;
- private final IdGenerator idGenerator;
+ private final PlatformIdGenerator idGenerator;
/**
* The database sequence name (optional).
diff --git a/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptorManager.java b/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptorManager.java
index a739317c8..51db0c4b7 100644
--- a/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptorManager.java
+++ b/src/main/java/com/avaje/ebeaninternal/server/deploy/BeanDescriptorManager.java
@@ -15,7 +15,7 @@ import com.avaje.ebean.config.ServerConfig;
import com.avaje.ebean.config.dbplatform.DatabasePlatform;
import com.avaje.ebean.config.dbplatform.DbHistorySupport;
import com.avaje.ebean.config.dbplatform.DbIdentity;
-import com.avaje.ebean.config.dbplatform.IdGenerator;
+import com.avaje.ebean.config.dbplatform.PlatformIdGenerator;
import com.avaje.ebean.config.dbplatform.IdType;
import com.avaje.ebean.event.changelog.ChangeLogFilter;
import com.avaje.ebean.event.changelog.ChangeLogListener;
@@ -663,7 +663,7 @@ public class BeanDescriptorManager implements BeanDescriptorMap {
InheritInfo inheritInfo = descriptor.getInheritInfo();
if (inheritInfo != null && !inheritInfo.isRoot()) {
DeployBeanInfo> rootBeanInfo = deplyInfoMap.get(inheritInfo.getRoot().getType());
- IdGenerator rootIdGen = rootBeanInfo.getDescriptor().getIdGenerator();
+ PlatformIdGenerator rootIdGen = rootBeanInfo.getDescriptor().getIdGenerator();
if (rootIdGen != null) {
descriptor.setIdGenerator(rootIdGen);
}
@@ -1240,11 +1240,11 @@ public class BeanDescriptorManager implements BeanDescriptorMap {
}
// create the sequence based IdGenerator
- IdGenerator seqIdGen = createSequenceIdGenerator(seqName);
+ PlatformIdGenerator seqIdGen = createSequenceIdGenerator(seqName);
desc.setIdGenerator(seqIdGen);
}
- private IdGenerator createSequenceIdGenerator(String seqName) {
+ private PlatformIdGenerator createSequenceIdGenerator(String seqName) {
return databasePlatform.createSequenceIdGenerator(backgroundExecutor, dataSource, seqName, dbSequenceBatchSize);
}
diff --git a/src/main/java/com/avaje/ebeaninternal/server/deploy/meta/DeployBeanDescriptor.java b/src/main/java/com/avaje/ebeaninternal/server/deploy/meta/DeployBeanDescriptor.java
index ffc011528..08c6504df 100644
--- a/src/main/java/com/avaje/ebeaninternal/server/deploy/meta/DeployBeanDescriptor.java
+++ b/src/main/java/com/avaje/ebeaninternal/server/deploy/meta/DeployBeanDescriptor.java
@@ -6,7 +6,7 @@ import com.avaje.ebean.annotation.DocStore;
import com.avaje.ebean.annotation.DocStoreMode;
import com.avaje.ebean.config.ServerConfig;
import com.avaje.ebean.config.TableName;
-import com.avaje.ebean.config.dbplatform.IdGenerator;
+import com.avaje.ebean.config.dbplatform.PlatformIdGenerator;
import com.avaje.ebean.config.dbplatform.IdType;
import com.avaje.ebean.event.BeanFindController;
import com.avaje.ebean.event.BeanPersistController;
@@ -94,7 +94,7 @@ public class DeployBeanDescriptor {
*/
private String idGeneratorName;
- private IdGenerator idGenerator;
+ private PlatformIdGenerator idGenerator;
/**
* The database sequence name (optional).
@@ -816,14 +816,14 @@ public class DeployBeanDescriptor {
/**
* Return the actual IdGenerator for this bean type (can be null).
*/
- public IdGenerator getIdGenerator() {
+ public PlatformIdGenerator getIdGenerator() {
return idGenerator;
}
/**
* Set the actual IdGenerator for this bean type.
*/
- public void setIdGenerator(IdGenerator idGenerator) {
+ public void setIdGenerator(PlatformIdGenerator idGenerator) {
this.idGenerator = idGenerator;
if (idGenerator != null && idGenerator.isDbSequence()) {
setSequenceName(idGenerator.getName());
diff --git a/src/main/java/com/avaje/ebeaninternal/server/idgen/UuidIdGenerator.java b/src/main/java/com/avaje/ebeaninternal/server/idgen/UuidIdGenerator.java
index e885f3d4b..bd3070a76 100644
--- a/src/main/java/com/avaje/ebeaninternal/server/idgen/UuidIdGenerator.java
+++ b/src/main/java/com/avaje/ebeaninternal/server/idgen/UuidIdGenerator.java
@@ -3,12 +3,12 @@ package com.avaje.ebeaninternal.server.idgen;
import java.util.UUID;
import com.avaje.ebean.Transaction;
-import com.avaje.ebean.config.dbplatform.IdGenerator;
+import com.avaje.ebean.config.dbplatform.PlatformIdGenerator;
/**
* IdGenerator for java util UUID.
*/
-public class UuidIdGenerator implements IdGenerator {
+public class UuidIdGenerator implements PlatformIdGenerator {
/**
* Return UUID from UUID.randomUUID();
@@ -38,6 +38,4 @@ public class UuidIdGenerator implements IdGenerator {
// ignored
}
-
-
}