From 16a05528b76a3e1c96d8449e2c1f40c23a062160 Mon Sep 17 00:00:00 2001 From: rbygrave Date: Tue, 17 Aug 2021 19:00:55 +1200 Subject: [PATCH] #2318 - Refactor internals - final classes in deploy packages etc --- .../deploy/AssocOneHelpRefExported.java | 2 +- .../server/deploy/AssocOneHelpRefInherit.java | 2 +- .../server/deploy/AssocOneHelpRefSimple.java | 2 +- .../server/deploy/BeanCascadeInfo.java | 2 +- .../server/deploy/BeanChangeJson.java | 5 +--- .../deploy/BeanCollectionHelpFactory.java | 7 ++---- .../server/deploy/BeanCollectionUtil.java | 3 +-- .../server/deploy/BeanDescriptorJsonHelp.java | 14 +---------- .../server/deploy/BeanDescriptorManager.java | 2 +- .../server/deploy/BeanEmbeddedMeta.java | 3 +-- .../deploy/BeanEmbeddedMetaFactory.java | 2 +- .../server/deploy/BeanFinderManager.java | 2 +- .../server/deploy/BeanFkeyProperty.java | 1 - .../server/deploy/BeanIudMetrics.java | 3 +-- .../deploy/BeanLifecycleAdapterFactory.java | 16 +++++-------- .../server/deploy/BeanListHelpElement.java | 2 +- .../server/deploy/BeanManager.java | 3 +-- .../server/deploy/BeanManagerFactory.java | 2 +- .../server/deploy/BeanMapHelpElement.java | 2 +- .../server/deploy/BeanMapQueryHelp.java | 2 +- .../server/deploy/BeanNaturalKey.java | 2 +- .../server/deploy/BeanPropertyIdClass.java | 2 +- .../deploy/BeanPropertyOrderColumn.java | 2 +- .../server/deploy/BeanPropertyOverride.java | 2 +- .../deploy/BeanPropertySimpleCollection.java | 2 +- .../deploy/BeanQueryAdapterManager.java | 2 +- .../server/deploy/BeanSetHelpElement.java | 2 +- .../server/deploy/BeanTable.java | 8 +------ .../deploy/ChainedBeanPersistController.java | 2 +- .../deploy/ChainedBeanPersistListener.java | 3 +-- .../ChainedBeanPostConstructListener.java | 3 +-- .../server/deploy/ChainedBeanPostLoad.java | 3 +-- .../deploy/ChainedBeanQueryAdapter.java | 3 +-- .../server/deploy/DCacheControl.java | 2 +- .../server/deploy/DCacheControlNone.java | 2 +- .../server/deploy/DCacheRegion.java | 2 +- .../server/deploy/DCacheRegionNone.java | 2 +- .../server/deploy/DbMigrationInfo.java | 2 +- .../deploy/DeployDocPropertyOptions.java | 5 +--- .../server/deploy/DetermineAggPath.java | 2 +- .../server/deploy/DetermineManyType.java | 5 +--- .../DynamicPropertyAggregationFormulaMTO.java | 2 +- .../server/deploy/ElementEntityBean.java | 4 +--- .../server/deploy/ElementHelpList.java | 2 +- .../server/deploy/ElementHelpMap.java | 2 +- .../server/deploy/ElementHelpSet.java | 2 +- .../server/deploy/ExportedProperty.java | 4 +--- .../server/deploy/IdentityMode.java | 2 +- .../server/deploy/IndexDefinition.java | 2 +- .../server/deploy/InheritInfo.java | 24 +------------------ .../server/deploy/IntersectionBuilder.java | 2 +- .../server/deploy/IntersectionRow.java | 5 +--- .../server/deploy/IntersectionTable.java | 2 +- .../server/deploy/PartitionMeta.java | 3 +-- .../deploy/PersistControllerManager.java | 2 +- .../server/deploy/PersistListenerManager.java | 2 +- .../server/deploy/PersistenceContextUtil.java | 2 +- .../server/deploy/PostConstructManager.java | 2 +- .../server/deploy/PostLoadManager.java | 2 +- .../server/deploy/PropertyForeignKey.java | 2 +- .../server/deploy/TableJoinColumn.java | 2 +- .../meta/BeanPropertyElementSetter.java | 2 +- .../deploy/meta/DeployBeanEmbedded.java | 2 +- .../deploy/meta/DeployBeanObtainJackson.java | 2 +- .../meta/DeployBeanPropertyAssocOne.java | 2 +- .../deploy/meta/DeployBeanPropertyLists.java | 2 +- .../DeployBeanPropertySimpleCollection.java | 2 +- .../server/deploy/meta/DeployBeanTable.java | 2 +- .../deploy/meta/DeployIdentityMode.java | 2 +- .../server/deploy/meta/DeployOrderColumn.java | 2 +- .../server/deploy/meta/DeployTableJoin.java | 8 +++---- .../deploy/meta/DeployTableJoinColumn.java | 2 +- .../deploy/parse/AnnotationAssocManys.java | 2 +- .../deploy/parse/AnnotationAssocOnes.java | 2 +- .../server/deploy/parse/AnnotationClass.java | 2 +- .../server/deploy/parse/AnnotationFields.java | 2 +- .../server/deploy/parse/AnnotationFind.java | 2 +- .../server/deploy/parse/AnnotationSql.java | 2 +- .../server/deploy/parse/DeployBeanInfo.java | 2 +- .../deploy/parse/DeployCreateProperties.java | 2 +- .../server/deploy/parse/DeployInherit.java | 2 +- .../deploy/parse/DeployInheritInfo.java | 2 +- .../server/deploy/parse/DeployUtil.java | 2 +- .../parse/InitMetaJacksonAnnotation.java | 2 +- .../deploy/parse/ReadAnnotationConfig.java | 2 +- .../server/deploy/parse/ReadAnnotations.java | 2 +- .../ReadValidationAnnotationsJakarta.java | 2 +- .../parse/ReadValidationAnnotationsJavax.java | 2 +- .../deploy/parse/TransientProperties.java | 8 +------ .../server/rawsql/DRawSqlService.java | 2 +- .../ebeaninternal/server/util/ArrayStack.java | 2 +- .../deploy/parse/AnnotationClassTest.java | 9 ++++--- .../model/visitor/VisitAllUsing.java | 2 +- 93 files changed, 106 insertions(+), 182 deletions(-) diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefExported.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefExported.java index 874231645..0aad172c3 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefExported.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefExported.java @@ -5,7 +5,7 @@ import io.ebeaninternal.server.query.SqlJoinType; /** * Helper for BeanPropertyAssocOne for OneToOne exported reference - not so common. */ -class AssocOneHelpRefExported extends AssocOneHelp { +final class AssocOneHelpRefExported extends AssocOneHelp { private final boolean softDelete; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefInherit.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefInherit.java index 1d619507b..7204a2cf1 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefInherit.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefInherit.java @@ -9,7 +9,7 @@ import java.sql.SQLException; /** * Helper for BeanPropertyAssocOne imported reference but with inheritance. */ -class AssocOneHelpRefInherit extends AssocOneHelp { +final class AssocOneHelpRefInherit extends AssocOneHelp { private final InheritInfo inherit; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefSimple.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefSimple.java index 967d7d492..cf6b09798 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefSimple.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/AssocOneHelpRefSimple.java @@ -3,7 +3,7 @@ package io.ebeaninternal.server.deploy; /** * Helper for BeanPropertyAssocOne imported reference - this is the common case. */ -class AssocOneHelpRefSimple extends AssocOneHelp { +final class AssocOneHelpRefSimple extends AssocOneHelp { AssocOneHelpRefSimple(BeanPropertyAssocOne property, String embeddedPrefix) { super(property, embeddedPrefix); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCascadeInfo.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCascadeInfo.java index 36b7b2152..c5df36975 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCascadeInfo.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCascadeInfo.java @@ -8,7 +8,7 @@ import javax.persistence.CascadeType; * This is set to associated Beans, Table joins and List. *

*/ -public class BeanCascadeInfo { +public final class BeanCascadeInfo { private boolean delete; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanChangeJson.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanChangeJson.java index e2a6938ff..2e9b9cc69 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanChangeJson.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanChangeJson.java @@ -11,16 +11,13 @@ import java.io.StringWriter; /** * Builds the 'new values' and 'old values' in JSON form for ChangeLog. */ -class BeanChangeJson implements BeanDiffVisitor { +final class BeanChangeJson implements BeanDiffVisitor { private final StringWriter newData; private final StringWriter oldData; - private final SpiJsonWriter newJson; private final SpiJsonWriter oldJson; - private final ArrayStack> stack = new ArrayStack<>(); - private BeanDescriptor descriptor; BeanChangeJson(BeanDescriptor descriptor, boolean statelessUpdate) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionHelpFactory.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionHelpFactory.java index a3376cd2e..e46bd2908 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionHelpFactory.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionHelpFactory.java @@ -9,7 +9,7 @@ import io.ebeaninternal.server.query.CQueryCollectionAdd; /** * Creates Helpers specific to the type of the property (List Set or Map). */ -public class BeanCollectionHelpFactory { +public final class BeanCollectionHelpFactory { @SuppressWarnings("rawtypes") private static final BeanListHelp LIST_HELP = new BeanListHelp(); @@ -21,7 +21,6 @@ public class BeanCollectionHelpFactory { * Create the helper based on the many property. */ public static BeanCollectionHelp create(BeanPropertyAssocMany many) { - boolean elementCollection = many.isElementCollection(); ManyType manyType = many.getManyType(); switch (manyType) { @@ -30,7 +29,7 @@ public class BeanCollectionHelpFactory { case SET: return elementCollection ? new BeanSetHelpElement<>(many) : new BeanSetHelp<>(many); case MAP: - return elementCollection ? new BeanMapHelpElement<>(many) :new BeanMapHelp<>(many); + return elementCollection ? new BeanMapHelpElement<>(many) : new BeanMapHelp<>(many); default: throw new RuntimeException("Invalid type " + manyType); } @@ -39,7 +38,6 @@ public class BeanCollectionHelpFactory { @SuppressWarnings("unchecked") public static CQueryCollectionAdd create(SpiQuery.Type manyType, OrmQueryRequest request) { - if (manyType == SpiQuery.Type.LIST) { return LIST_HELP; @@ -56,5 +54,4 @@ public class BeanCollectionHelpFactory { } } - } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionUtil.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionUtil.java index e632a729c..e1a0d352c 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionUtil.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanCollectionUtil.java @@ -9,7 +9,7 @@ import java.util.Map; /** * Utility methods for BeanCollections. */ -public class BeanCollectionUtil { +public final class BeanCollectionUtil { /** * Return true if this is a bean collection and not considered dirty. @@ -66,7 +66,6 @@ public class BeanCollectionUtil { // returns a collection of beans return bc.getActualDetails(); } - if (o instanceof Map) { // yes, we want the entrySet (to set the keys) return ((Map) o).values(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorJsonHelp.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorJsonHelp.java index 059b368a0..d9b56f215 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorJsonHelp.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorJsonHelp.java @@ -16,10 +16,9 @@ import java.util.Map; import static io.ebeaninternal.server.persist.DmlUtil.isNullOrZero; -class BeanDescriptorJsonHelp { +final class BeanDescriptorJsonHelp { private final BeanDescriptor desc; - private final InheritInfo inheritInfo; BeanDescriptorJsonHelp(BeanDescriptor desc) { @@ -28,21 +27,16 @@ class BeanDescriptorJsonHelp { } void jsonWrite(SpiJsonWriter writeJson, EntityBean bean, String key) throws IOException { - writeJson.writeStartObject(key); - if (inheritInfo == null) { jsonWriteProperties(writeJson, bean); - } else { InheritInfo localInheritInfo = inheritInfo.readType(bean.getClass()); String discValue = localInheritInfo.getDiscriminatorStringValue(); String discColumn = localInheritInfo.getDiscriminatorColumn(); writeJson.gen().writeStringField(discColumn, discValue); - localInheritInfo.desc().jsonWriteProperties(writeJson, bean); } - writeJson.writeEndObject(); } @@ -59,7 +53,6 @@ class BeanDescriptorJsonHelp { } void jsonWriteDirtyProperties(SpiJsonWriter writeJson, EntityBean bean, boolean[] dirtyProps) throws IOException { - writeJson.writeStartObject(null); // render the dirty properties BeanProperty[] props = desc.propertiesNonTransient(); @@ -73,7 +66,6 @@ class BeanDescriptorJsonHelp { @SuppressWarnings("unchecked") T jsonRead(SpiJsonReader jsonRead, String path, boolean withInheritance) throws IOException { - JsonParser parser = jsonRead.getParser(); //noinspection StatementWithEmptyBody if (parser.getCurrentToken() == JsonToken.START_OBJECT) { @@ -115,21 +107,17 @@ class BeanDescriptorJsonHelp { } private T jsonReadObject(SpiJsonReader readJson, String path) throws IOException { - EntityBean bean = desc.createEntityBeanForJson(); return jsonReadProperties(readJson, bean, path); } @SuppressWarnings("unchecked") private T jsonReadProperties(SpiJsonReader readJson, EntityBean bean, String path) throws IOException { - if (path != null) { readJson.pushPath(path); } - // unmapped properties, send to JsonReadBeanVisitor later Map unmappedProperties = null; - do { JsonParser parser = readJson.getParser(); JsonToken event = parser.nextToken(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorManager.java index 84b412513..ef1117659 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanDescriptorManager.java @@ -86,7 +86,7 @@ import java.util.concurrent.TimeUnit; /** * Creates BeanDescriptors. */ -public class BeanDescriptorManager implements BeanDescriptorMap, SpiBeanTypeManager { +public final class BeanDescriptorManager implements BeanDescriptorMap, SpiBeanTypeManager { private static final Logger logger = LoggerFactory.getLogger(BeanDescriptorManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMeta.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMeta.java index cac179b62..57aed6cb3 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMeta.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMeta.java @@ -1,7 +1,6 @@ package io.ebeaninternal.server.deploy; -public class BeanEmbeddedMeta { - +public final class BeanEmbeddedMeta { private final BeanProperty[] properties; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMetaFactory.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMetaFactory.java index 5def0dc64..d6ee56491 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMetaFactory.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanEmbeddedMetaFactory.java @@ -10,7 +10,7 @@ import java.util.Map; * Creates BeanProperties for Embedded beans that have deployment information * such as the actual DB column name and table alias. */ -class BeanEmbeddedMetaFactory { +final class BeanEmbeddedMetaFactory { /** * Create BeanProperties for embedded beans using the deployment specific DB column name and table alias. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFinderManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFinderManager.java index a1e916310..bb85c3b76 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFinderManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFinderManager.java @@ -11,7 +11,7 @@ import java.util.List; /** * Default implementation for BeanFinderFactory. */ -class BeanFinderManager { +final class BeanFinderManager { private final Logger logger = LoggerFactory.getLogger(BeanFinderManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFkeyProperty.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFkeyProperty.java index e651e7fc2..071a0f660 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFkeyProperty.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanFkeyProperty.java @@ -16,7 +16,6 @@ public final class BeanFkeyProperty implements ElPropertyValue { private final String name; private final String dbColumn; private final boolean containsMany; - private final int deployOrder; public BeanFkeyProperty(String name, String dbColumn, int deployOrder) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanIudMetrics.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanIudMetrics.java index 889716aa3..64e4deb8f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanIudMetrics.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanIudMetrics.java @@ -8,7 +8,7 @@ import io.ebeaninternal.server.core.PersistRequest; /** * Metrics for ORM Insert Update and Delete for a given bean type. */ -class BeanIudMetrics { +final class BeanIudMetrics { private final TimedMetric insert; private final TimedMetric update; @@ -21,7 +21,6 @@ class BeanIudMetrics { * Create for a given bean type. */ BeanIudMetrics(String beanShortName) { - MetricFactory metricFactory = MetricFactory.get(); String prefix = "iud." + beanShortName; this.insert = metricFactory.createTimedMetric(prefix + ".insert"); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory.java index 7a581e1c8..f754c9060 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory.java @@ -30,7 +30,7 @@ import java.util.List; * lifecycle events. *

*/ -class BeanLifecycleAdapterFactory { +final class BeanLifecycleAdapterFactory { private final boolean postConstructPresent; @@ -42,20 +42,16 @@ class BeanLifecycleAdapterFactory { * Register a BeanPersistController for methods annotated with lifecycle events. */ void addLifecycleMethods(DeployBeanDescriptor deployDesc) { - Method[] methods = deployDesc.getBeanType().getMethods(); - // look for annotated methods MethodsHolder methodHolder = new MethodsHolder(); for (Method m : methods) { methodHolder.checkMethod(m, postConstructPresent); } - if (methodHolder.hasPersistMethods()) { // has pre/post persist annotated methods deployDesc.addPersistController(new PersistAdapter(new PersistMethodsHolder(methodHolder))); } - if (!methodHolder.postLoads.isEmpty()) { // has postLoad methods deployDesc.addPostLoad(new PostLoadAdapter(methodHolder.postLoads)); @@ -69,7 +65,7 @@ class BeanLifecycleAdapterFactory { /** * Holds Methods for the lifecycle events.s */ - private static class MethodsHolder { + private static final class MethodsHolder { private boolean hasPersistMethods; private final List preInserts = new ArrayList<>(); @@ -162,7 +158,7 @@ class BeanLifecycleAdapterFactory { /** * Holds Methods for the lifecycle events.s */ - private static class PersistMethodsHolder { + private static final class PersistMethodsHolder { private final Method[] preInserts; private final Method[] postInserts; @@ -188,7 +184,7 @@ class BeanLifecycleAdapterFactory { /** * BeanPersistAdapter using reflection to invoke lifecycle methods. */ - private static class PersistAdapter extends BeanPersistAdapter { + private static final class PersistAdapter extends BeanPersistAdapter { private final PersistMethodsHolder methodHolder; @@ -264,7 +260,7 @@ class BeanLifecycleAdapterFactory { /** * BeanPostLoad using reflection to invoke lifecycle methods. */ - private static class PostLoadAdapter implements BeanPostLoad { + private static final class PostLoadAdapter implements BeanPostLoad { private final Method[] postLoadMethods; @@ -297,7 +293,7 @@ class BeanLifecycleAdapterFactory { /** * PostConstructAdapter using reflection to invoke lifecycle methods. */ - private static class PostConstructAdapter implements BeanPostConstructListener { + private static final class PostConstructAdapter implements BeanPostConstructListener { private final Method[] postConstructMethods; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanListHelpElement.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanListHelpElement.java index 0e473e4eb..b5f3ae432 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanListHelpElement.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanListHelpElement.java @@ -7,7 +7,7 @@ import io.ebeaninternal.api.json.SpiJsonWriter; /** * Helper for element collection List. */ -public class BeanListHelpElement extends BeanListHelp { +public final class BeanListHelpElement extends BeanListHelp { BeanListHelpElement(BeanPropertyAssocMany many) { super(many); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManager.java index 630c60b4e..d6d605313 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManager.java @@ -5,10 +5,9 @@ import io.ebeaninternal.server.persist.BeanPersister; /** * Holds the BeanDescriptor and its associated BeanPersister. */ -public class BeanManager { +public final class BeanManager { private final BeanPersister persister; - private final BeanDescriptor descriptor; public BeanManager(BeanDescriptor descriptor, BeanPersister persister) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManagerFactory.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManagerFactory.java index e80cff573..3f2f61e14 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManagerFactory.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanManagerFactory.java @@ -7,7 +7,7 @@ import io.ebeaninternal.server.persist.dml.DmlBeanPersisterFactory; /** * Creates BeanManagers. */ -class BeanManagerFactory { +final class BeanManagerFactory { private final BeanPersisterFactory persisterFactory; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapHelpElement.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapHelpElement.java index 71cdfb3fa..1c6fb7931 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapHelpElement.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapHelpElement.java @@ -5,7 +5,7 @@ import io.ebean.bean.EntityBean; import io.ebean.common.BeanMap; import io.ebeaninternal.api.json.SpiJsonWriter; -public class BeanMapHelpElement extends BeanMapHelp { +public final class BeanMapHelpElement extends BeanMapHelp { BeanMapHelpElement(BeanPropertyAssocMany many) { super(many); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapQueryHelp.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapQueryHelp.java index e78381b0b..b2e4f0f7d 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapQueryHelp.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanMapQueryHelp.java @@ -6,7 +6,7 @@ import io.ebean.common.BeanMap; import io.ebeaninternal.server.el.ElPropertyValue; import io.ebeaninternal.server.query.CQueryCollectionAdd; -class BeanMapQueryHelp implements CQueryCollectionAdd { +final class BeanMapQueryHelp implements CQueryCollectionAdd { private final ElPropertyValue elGetValue; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanNaturalKey.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanNaturalKey.java index 57f6c2512..3d3ed9866 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanNaturalKey.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanNaturalKey.java @@ -6,7 +6,7 @@ import java.util.Set; /** * Natural key for a bean type. */ -public class BeanNaturalKey { +public final class BeanNaturalKey { private final String[] naturalKey; private final BeanProperty[] props; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyIdClass.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyIdClass.java index 45d3614c3..9e0d61684 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyIdClass.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyIdClass.java @@ -6,7 +6,7 @@ import io.ebeaninternal.server.deploy.meta.DeployBeanPropertyAssocOne; /** * Bean property for an IdClass embeddedId. */ -public class BeanPropertyIdClass extends BeanPropertyAssocOne { +public final class BeanPropertyIdClass extends BeanPropertyAssocOne { @SuppressWarnings("unchecked") public BeanPropertyIdClass(BeanDescriptorMap owner, BeanDescriptor descriptor, DeployBeanPropertyAssocOne deploy) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOrderColumn.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOrderColumn.java index 319c8830b..a6ac913b9 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOrderColumn.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOrderColumn.java @@ -8,7 +8,7 @@ import io.ebeaninternal.server.deploy.meta.DeployBeanProperty; * * The value of which is held on the entity bean intercept. */ -public class BeanPropertyOrderColumn extends BeanProperty { +public final class BeanPropertyOrderColumn extends BeanProperty { public BeanPropertyOrderColumn(BeanDescriptor descriptor, DeployBeanProperty deploy) { super(descriptor, deploy); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOverride.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOverride.java index d322c5074..fd938d0d2 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOverride.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertyOverride.java @@ -9,7 +9,7 @@ import io.ebeaninternal.server.core.InternString; * Typically this is for Embedded Beans. *

*/ -class BeanPropertyOverride { +final class BeanPropertyOverride { private final String dbColumn; private final boolean dbNullable; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java index d73574379..2fbf41dcc 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanPropertySimpleCollection.java @@ -7,7 +7,7 @@ import io.ebeaninternal.server.deploy.meta.DeployBeanPropertySimpleCollection; import java.io.IOException; -public class BeanPropertySimpleCollection extends BeanPropertyAssocMany { +public final class BeanPropertySimpleCollection extends BeanPropertyAssocMany { public BeanPropertySimpleCollection(BeanDescriptor descriptor, DeployBeanPropertySimpleCollection deploy) { super(descriptor, deploy); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanQueryAdapterManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanQueryAdapterManager.java index 7a50f2deb..2f8f05317 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanQueryAdapterManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanQueryAdapterManager.java @@ -11,7 +11,7 @@ import java.util.List; /** * Default implementation for creating BeanControllers. */ -class BeanQueryAdapterManager { +final class BeanQueryAdapterManager { private static final Logger logger = LoggerFactory.getLogger(BeanQueryAdapterManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanSetHelpElement.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanSetHelpElement.java index 94ac9e5a5..2201d69aa 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanSetHelpElement.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanSetHelpElement.java @@ -7,7 +7,7 @@ import io.ebeaninternal.api.json.SpiJsonWriter; /** * Helper for element collection List. */ -public class BeanSetHelpElement extends BeanSetHelp { +public final class BeanSetHelpElement extends BeanSetHelp { BeanSetHelpElement(BeanPropertyAssocMany many) { super(many); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanTable.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanTable.java index f2cc09e78..3ccdb8218 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanTable.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/BeanTable.java @@ -17,19 +17,13 @@ import org.slf4j.LoggerFactory; * in a BeanDescriptor. *

*/ -public class BeanTable { +public final class BeanTable { private static final Logger logger = LoggerFactory.getLogger(BeanTable.class); private final BeanDescriptorMap owner; - private final Class beanType; - - /** - * The base table. - */ private final String baseTable; - private final BeanProperty idProperty; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistController.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistController.java index 404336aca..dfb2c302a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistController.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistController.java @@ -14,7 +14,7 @@ import java.util.List; *

* Used when multiple BeanPersistController register for the same bean type. */ -public class ChainedBeanPersistController implements BeanPersistController { +public final class ChainedBeanPersistController implements BeanPersistController { private static final Sorter SORTER = new Sorter(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistListener.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistListener.java index b92aa4ec7..d49380577 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistListener.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPersistListener.java @@ -9,10 +9,9 @@ import java.util.Set; /** * Handles multiple BeanPersistListener's for a given entity type. */ -public class ChainedBeanPersistListener implements BeanPersistListener { +public final class ChainedBeanPersistListener implements BeanPersistListener { private final List list; - private final BeanPersistListener[] chain; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostConstructListener.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostConstructListener.java index e9ba81c95..c615f8b20 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostConstructListener.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostConstructListener.java @@ -8,10 +8,9 @@ import java.util.List; /** * Handles multiple BeanPostLoad's for a given entity type. */ -public class ChainedBeanPostConstructListener implements BeanPostConstructListener { +public final class ChainedBeanPostConstructListener implements BeanPostConstructListener { private final List list; - private final BeanPostConstructListener[] chain; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostLoad.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostLoad.java index 9da1fdd66..4d7cff8ef 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostLoad.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanPostLoad.java @@ -8,10 +8,9 @@ import java.util.List; /** * Handles multiple BeanPostLoad's for a given entity type. */ -public class ChainedBeanPostLoad implements BeanPostLoad { +public final class ChainedBeanPostLoad implements BeanPostLoad { private final List list; - private final BeanPostLoad[] chain; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanQueryAdapter.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanQueryAdapter.java index 15501ef0e..ca67a0746 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanQueryAdapter.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ChainedBeanQueryAdapter.java @@ -11,12 +11,11 @@ import java.util.List; /** * Handles multiple BeanQueryAdapter for a given entity type. */ -public class ChainedBeanQueryAdapter implements BeanQueryAdapter { +public final class ChainedBeanQueryAdapter implements BeanQueryAdapter { private static final Sorter SORTER = new Sorter(); private final List list; - private final BeanQueryAdapter[] chain; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControl.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControl.java index a99dabf89..a43f9f749 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControl.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControl.java @@ -6,7 +6,7 @@ import io.ebeaninternal.api.SpiCacheRegion; /** * Default implementation of SpiCacheControl. */ -class DCacheControl implements SpiCacheControl { +final class DCacheControl implements SpiCacheControl { private final SpiCacheRegion region; private final boolean bean; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControlNone.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControlNone.java index 8f4797f47..1101c180b 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControlNone.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheControlNone.java @@ -5,7 +5,7 @@ import io.ebeaninternal.api.SpiCacheControl; /** * Cache control used when no caching is on the bean type. */ -class DCacheControlNone implements SpiCacheControl { +final class DCacheControlNone implements SpiCacheControl { static final SpiCacheControl INSTANCE = new DCacheControlNone(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegion.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegion.java index 2056833b7..9f1bd5d59 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegion.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegion.java @@ -2,7 +2,7 @@ package io.ebeaninternal.server.deploy; import io.ebeaninternal.api.SpiCacheRegion; -public class DCacheRegion implements SpiCacheRegion { +public final class DCacheRegion implements SpiCacheRegion { private boolean enabled = true; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegionNone.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegionNone.java index ff8dfeb17..c7b20095a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegionNone.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DCacheRegionNone.java @@ -2,7 +2,7 @@ package io.ebeaninternal.server.deploy; import io.ebeaninternal.api.SpiCacheRegion; -class DCacheRegionNone implements SpiCacheRegion { +final class DCacheRegionNone implements SpiCacheRegion { static final SpiCacheRegion INSTANCE = new DCacheRegionNone(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DbMigrationInfo.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DbMigrationInfo.java index 630ea953b..e6e4a3eef 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DbMigrationInfo.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DbMigrationInfo.java @@ -10,7 +10,7 @@ import io.ebean.annotation.Platform; * * @author Roland Praml, FOCONIS AG */ -public class DbMigrationInfo { +public final class DbMigrationInfo { private final List preAdd; private final List postAdd; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DeployDocPropertyOptions.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DeployDocPropertyOptions.java index 81d8ea3f8..e6e00b2e9 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DeployDocPropertyOptions.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DeployDocPropertyOptions.java @@ -8,7 +8,7 @@ import io.ebeanservice.docstore.api.mapping.DocPropertyOptions; /** * The options for document property collected when reading deployment mapping. */ -public class DeployDocPropertyOptions { +public final class DeployDocPropertyOptions { private static final DocPropertyOptions EMPTY = new DocPropertyOptions(); @@ -24,7 +24,6 @@ public class DeployDocPropertyOptions { * Read the DocProperty deployment options. */ public void setDocProperty(DocProperty doc) { - createOptions(); mapping.apply(doc); } @@ -33,7 +32,6 @@ public class DeployDocPropertyOptions { * Read the DocSortable deployment options. */ public void setDocSortable(DocSortable doc) { - createOptions(); mapping.setSortable(true); setStore(doc.store()); @@ -45,7 +43,6 @@ public class DeployDocPropertyOptions { * Read the DocCode deployment options. */ public void setDocCode(DocCode doc) { - createOptions(); mapping.setCode(true); setStore(doc.store()); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineAggPath.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineAggPath.java index c2e576b0c..5790377db 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineAggPath.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineAggPath.java @@ -5,7 +5,7 @@ import io.ebeaninternal.server.deploy.meta.DeployBeanProperty; import io.ebeaninternal.server.deploy.meta.DeployBeanPropertyAssocMany; import io.ebeaninternal.server.deploy.meta.DeployBeanPropertyAssocOne; -class DetermineAggPath { +final class DetermineAggPath { /** * Return the many path for the given aggregation formula. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineManyType.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineManyType.java index cfa560310..fc1859074 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineManyType.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DetermineManyType.java @@ -7,10 +7,7 @@ import java.util.Set; /** * Determine the Many Type for a property. */ -public class DetermineManyType { - - public DetermineManyType() { - } +public final class DetermineManyType { public ManyType getManyType(Class type) { if (type.equals(List.class)) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DynamicPropertyAggregationFormulaMTO.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DynamicPropertyAggregationFormulaMTO.java index eb8ba9997..0021d9636 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DynamicPropertyAggregationFormulaMTO.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/DynamicPropertyAggregationFormulaMTO.java @@ -2,7 +2,7 @@ package io.ebeaninternal.server.deploy; import io.ebeaninternal.server.query.SqlBeanLoad; -public class DynamicPropertyAggregationFormulaMTO extends DynamicPropertyAggregationFormula { +public final class DynamicPropertyAggregationFormulaMTO extends DynamicPropertyAggregationFormula { private final BeanPropertyAssocOne prop; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementEntityBean.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementEntityBean.java index 49dfccdc8..2f6566bff 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementEntityBean.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementEntityBean.java @@ -3,14 +3,12 @@ package io.ebeaninternal.server.deploy; import io.ebean.bean.EntityBean; import io.ebean.bean.EntityBeanIntercept; -class ElementEntityBean implements EntityBean { +final class ElementEntityBean implements EntityBean { private static final long serialVersionUID = 8742536671024715601L; private final String[] properties; - private Object[] data; - private final EntityBeanIntercept intercept; ElementEntityBean(String[] properties) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpList.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpList.java index 5c48b4f19..a9e38699e 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpList.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpList.java @@ -6,7 +6,7 @@ import io.ebean.common.BeanList; import java.util.ArrayList; import java.util.List; -class ElementHelpList implements ElementHelp { +final class ElementHelpList implements ElementHelp { @Override public ElementCollector createCollector() { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpMap.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpMap.java index 985ab4248..e00d2ef2f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpMap.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpMap.java @@ -6,7 +6,7 @@ import io.ebean.common.BeanMap; import java.util.LinkedHashMap; import java.util.Map; -class ElementHelpMap implements ElementHelp { +final class ElementHelpMap implements ElementHelp { @Override public ElementCollector createCollector() { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpSet.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpSet.java index 71c15aee3..e15e74e28 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpSet.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ElementHelpSet.java @@ -6,7 +6,7 @@ import io.ebean.common.BeanSet; import java.util.LinkedHashSet; import java.util.Set; -class ElementHelpSet implements ElementHelp { +final class ElementHelpSet implements ElementHelp { @Override public ElementCollector createCollector() { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ExportedProperty.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ExportedProperty.java index 8c4b789ab..b8ec305a4 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ExportedProperty.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/ExportedProperty.java @@ -9,12 +9,10 @@ import io.ebeaninternal.server.core.InternString; * Used to for Assoc Manys to create references etc. *

*/ -class ExportedProperty { +final class ExportedProperty { private final String foreignDbColumn; - private final BeanProperty property; - private final boolean embedded; ExportedProperty(boolean embedded, String foreignDbColumn, BeanProperty property) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IdentityMode.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IdentityMode.java index 0bea99393..9ffd2c2e5 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IdentityMode.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IdentityMode.java @@ -4,7 +4,7 @@ import io.ebean.annotation.IdentityGenerated; import io.ebean.config.dbplatform.IdType; import io.ebeaninternal.server.deploy.meta.DeployIdentityMode; -public class IdentityMode { +public final class IdentityMode { public static IdentityMode NONE = new IdentityMode(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IndexDefinition.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IndexDefinition.java index 3fec7ecf4..032452574 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IndexDefinition.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IndexDefinition.java @@ -5,7 +5,7 @@ import io.ebean.annotation.Platform; /** * Holds multiple column unique constraints defined for an entity. */ -public class IndexDefinition { +public final class IndexDefinition { private final String[] columns; private final String name; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/InheritInfo.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/InheritInfo.java index a8a733a41..1f3e33797 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/InheritInfo.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/InheritInfo.java @@ -17,43 +17,30 @@ import java.util.Set; /** * Represents a node in the Inheritance tree. Holds information regarding Super Subclass support. */ -public class InheritInfo { +public final class InheritInfo { private final String discriminatorStringValue; private final Object discriminatorValue; - private final String discriminatorColumn; - private final int discriminatorType; - private final int discriminatorLength; - private final String columnDefn; - private final String where; - private final Class type; - private final List children = new ArrayList<>(); - /** * Map of discriminator values to InheritInfo. */ private final HashMap discMap; - /** * Map of class types to InheritInfo (taking into account subclass proxy classes). */ private final HashMap typeMap; - private final InheritInfo parent; - private final InheritInfo root; - private BeanDescriptor descriptor; public InheritInfo(InheritInfo r, InheritInfo parent, DeployInheritInfo deploy) { - this.parent = parent; this.type = deploy.getType(); this.discriminatorColumn = InternString.intern(deploy.getColumnName(parent)); @@ -85,7 +72,6 @@ public class InheritInfo { * Visit all the children in the inheritance tree. */ public void visitChildren(InheritInfoVisitor visitor) { - for (InheritInfo child : children) { visitor.visit(child); child.visitChildren(visitor); @@ -96,7 +82,6 @@ public class InheritInfo { * Append check constraint values for the entire inheritance hierarchy. */ public void appendCheckConstraintValues(final String propertyName, final Set checkConstraintValues) { - visitChildren(inheritInfo -> { BeanProperty prop = inheritInfo.desc().getBeanProperty(propertyName); if (prop != null) { @@ -190,9 +175,7 @@ public class InheritInfo { * Get the bean property additionally looking in the sub types. */ BeanProperty findSubTypeProperty(String propertyName) { - BeanProperty prop; - for (InheritInfo childInfo : children) { // recursively search this child bean descriptor prop = childInfo.desc().findProperty(propertyName); @@ -200,7 +183,6 @@ public class InheritInfo { return prop; } } - return null; } @@ -208,7 +190,6 @@ public class InheritInfo { * Add the local properties for each sub class below this one. */ public void addChildrenProperties(SqlTreeProperties selectProps) { - for (InheritInfo childInfo : children) { selectProps.add(childInfo.descriptor.propertiesLocal()); childInfo.addChildrenProperties(selectProps); @@ -226,11 +207,9 @@ public class InheritInfo { * Return the associated InheritInfo for this discriminator value. */ InheritInfo readType(String discValue) { - if (discValue == null) { return null; } - InheritInfo typeInfo = root.getType(discValue); if (typeInfo == null) { throw new PersistenceException("Inheritance type for discriminator value [" + discValue + "] was not found?"); @@ -242,7 +221,6 @@ public class InheritInfo { * Return the associated InheritInfo for this bean type. */ public InheritInfo readType(Class beanType) { - InheritInfo typeInfo = root.getTypeByClass(beanType); if (typeInfo == null) { throw new PersistenceException("Inheritance type for bean type [" + beanType.getName() + "] was not found?"); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionBuilder.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionBuilder.java index 764c2c700..bbe133838 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionBuilder.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionBuilder.java @@ -6,7 +6,7 @@ import java.util.List; /** * Helper to build IntersectionTable. */ -public class IntersectionBuilder { +public final class IntersectionBuilder { private final String publishTable; private final String draftTable; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionRow.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionRow.java index 46d677ad8..3284032bb 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionRow.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionRow.java @@ -12,14 +12,11 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -public class IntersectionRow { +public final class IntersectionRow { private final String tableName; - private final BeanDescriptor targetDescriptor; - private final LinkedHashMap values = new LinkedHashMap<>(); - private List excludeIds; private BeanDescriptor excludeDescriptor; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionTable.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionTable.java index 8f10e3a92..1a3553ed4 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionTable.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/IntersectionTable.java @@ -3,7 +3,7 @@ package io.ebeaninternal.server.deploy; import io.ebean.Database; import io.ebean.SqlUpdate; -public class IntersectionTable { +public final class IntersectionTable { private final String insertSql; private final String deleteSql; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PartitionMeta.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PartitionMeta.java index d041ae0a1..f146dc86f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PartitionMeta.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PartitionMeta.java @@ -2,10 +2,9 @@ package io.ebeaninternal.server.deploy; import io.ebean.annotation.PartitionMode; -public class PartitionMeta { +public final class PartitionMeta { private final PartitionMode mode; - private String property; public PartitionMeta(PartitionMode mode, String property) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistControllerManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistControllerManager.java index f552fc77f..a6d45a12e 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistControllerManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistControllerManager.java @@ -11,7 +11,7 @@ import java.util.List; /** * Default implementation for creating BeanControllers. */ -class PersistControllerManager { +final class PersistControllerManager { private static final Logger logger = LoggerFactory.getLogger(PersistControllerManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistListenerManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistListenerManager.java index 0e9c261c7..13ca4e7a5 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistListenerManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistListenerManager.java @@ -12,7 +12,7 @@ import java.util.List; * Manages the assignment/registration of BeanPersistListener with their * respective DeployBeanDescriptor's. */ -class PersistListenerManager { +final class PersistListenerManager { private static final Logger logger = LoggerFactory.getLogger(PersistListenerManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistenceContextUtil.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistenceContextUtil.java index 69ad243e8..1a1c5651f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistenceContextUtil.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PersistenceContextUtil.java @@ -5,7 +5,7 @@ import javax.persistence.Entity; /** * Utility to find the root bean type. */ -public class PersistenceContextUtil { +public final class PersistenceContextUtil { /** * Find and return the root bean type for the given class. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostConstructManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostConstructManager.java index 0ef7b7120..6e7bb97c5 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostConstructManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostConstructManager.java @@ -11,7 +11,7 @@ import java.util.List; /** * Default implementation for creating BeanControllers. */ -class PostConstructManager { +final class PostConstructManager { private static final Logger logger = LoggerFactory.getLogger(PostConstructManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostLoadManager.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostLoadManager.java index 0648d788f..f30826b90 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostLoadManager.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PostLoadManager.java @@ -11,7 +11,7 @@ import java.util.List; /** * Default implementation for creating BeanControllers. */ -class PostLoadManager { +final class PostLoadManager { private static final Logger logger = LoggerFactory.getLogger(PostLoadManager.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PropertyForeignKey.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PropertyForeignKey.java index 480362e2a..6f66d3ed2 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PropertyForeignKey.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/PropertyForeignKey.java @@ -3,7 +3,7 @@ package io.ebeaninternal.server.deploy; import io.ebean.annotation.ConstraintMode; import io.ebean.annotation.DbForeignKey; -public class PropertyForeignKey { +public final class PropertyForeignKey { private final boolean noIndex; private final boolean noConstraint; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/TableJoinColumn.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/TableJoinColumn.java index a04d72ed6..4878557b2 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/TableJoinColumn.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/TableJoinColumn.java @@ -6,7 +6,7 @@ import io.ebeaninternal.server.deploy.meta.DeployTableJoinColumn; /** * A join pair of local and foreign properties. */ -public class TableJoinColumn { +public final class TableJoinColumn { /** * The local database column name. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/BeanPropertyElementSetter.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/BeanPropertyElementSetter.java index f20ee47cf..c8a362b60 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/BeanPropertyElementSetter.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/BeanPropertyElementSetter.java @@ -6,7 +6,7 @@ import io.ebeaninternal.server.properties.BeanPropertySetter; /** * Setter used for "element beans" with ElementCollection. */ -class BeanPropertyElementSetter implements BeanPropertySetter { +final class BeanPropertyElementSetter implements BeanPropertySetter { private final int pos; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanEmbedded.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanEmbedded.java index 72b541cef..ad70b8d30 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanEmbedded.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanEmbedded.java @@ -10,7 +10,7 @@ import java.util.Map; * Typically collects the overridden column names mapped * to the Embedded bean. */ -public class DeployBeanEmbedded { +public final class DeployBeanEmbedded { /** * A map of property names to dbColumns. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanObtainJackson.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanObtainJackson.java index 20beef7eb..9bbfb6007 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanObtainJackson.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanObtainJackson.java @@ -8,7 +8,7 @@ import io.ebean.config.DatabaseConfig; /** * Used to obtain the Jackson AnnotatedClass for a given bean type utlimately to obtain field level Jackson annotations. */ -class DeployBeanObtainJackson { +final class DeployBeanObtainJackson { private final DatabaseConfig config; private final Class beanType; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyAssocOne.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyAssocOne.java index 79f253b86..1444c69de 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyAssocOne.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyAssocOne.java @@ -7,7 +7,7 @@ import javax.persistence.CascadeType; /** * Property mapped to a joined bean. */ -public class DeployBeanPropertyAssocOne extends DeployBeanPropertyAssoc { +public final class DeployBeanPropertyAssocOne extends DeployBeanPropertyAssoc { private boolean oneToOne; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyLists.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyLists.java index 5466d5bca..a6ed9c330 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyLists.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertyLists.java @@ -15,7 +15,7 @@ import java.util.List; /** * Helper object to classify BeanProperties into appropriate lists. */ -public class DeployBeanPropertyLists { +public final class DeployBeanPropertyLists { private static final Logger logger = LoggerFactory.getLogger(DeployBeanPropertyLists.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertySimpleCollection.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertySimpleCollection.java index 6777dcc4c..870bae89f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertySimpleCollection.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanPropertySimpleCollection.java @@ -3,7 +3,7 @@ package io.ebeaninternal.server.deploy.meta; import io.ebean.bean.BeanCollection.ModifyListenMode; import io.ebeaninternal.server.deploy.ManyType; -public class DeployBeanPropertySimpleCollection extends DeployBeanPropertyAssocMany { +public final class DeployBeanPropertySimpleCollection extends DeployBeanPropertyAssocMany { public DeployBeanPropertySimpleCollection(DeployBeanDescriptor desc, Class targetType, ManyType manyType) { super(desc, targetType, manyType); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanTable.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanTable.java index de0166876..960205e0f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanTable.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployBeanTable.java @@ -13,7 +13,7 @@ import io.ebeaninternal.server.deploy.BeanPropertyAssocOne; * in a BeanDescriptor. *

*/ -public class DeployBeanTable { +public final class DeployBeanTable { private final Class beanType; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployIdentityMode.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployIdentityMode.java index 5915dc873..6a20d9145 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployIdentityMode.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployIdentityMode.java @@ -5,7 +5,7 @@ import io.ebean.annotation.IdentityGenerated; import io.ebean.annotation.IdentityType; import io.ebean.config.dbplatform.IdType; -public class DeployIdentityMode { +public final class DeployIdentityMode { public static DeployIdentityMode auto() { return new DeployIdentityMode(IdType.AUTO); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployOrderColumn.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployOrderColumn.java index 26a8402b6..4a8943a8e 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployOrderColumn.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployOrderColumn.java @@ -2,7 +2,7 @@ package io.ebeaninternal.server.deploy.meta; import javax.persistence.OrderColumn; -public class DeployOrderColumn { +public final class DeployOrderColumn { /** * Logical property name used for order by and available for expression language. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoin.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoin.java index c3451f9f4..2a4608358 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoin.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoin.java @@ -15,7 +15,7 @@ import java.util.Set; * This gets converted into a immutable TableJoin when complete. *

*/ -public class DeployTableJoin { +public final class DeployTableJoin { /** * The joined table. @@ -33,7 +33,7 @@ public class DeployTableJoin { private ArrayList columns = new ArrayList<>(4); private InheritInfo inheritInfo; - + private String extraWhere; /** @@ -146,11 +146,11 @@ public class DeployTableJoin { public String getExtraWhere() { return extraWhere; } - + public void setExtraWhere(String extraWhere) { this.extraWhere = extraWhere; } - + public DeployTableJoin createInverse(String tableName) { DeployTableJoin inverse = new DeployTableJoin(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoinColumn.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoinColumn.java index da4bf0339..df5c4e0d5 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoinColumn.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/meta/DeployTableJoinColumn.java @@ -8,7 +8,7 @@ import javax.persistence.JoinColumn; /** * A join pair of local and foreign properties. */ -public class DeployTableJoinColumn { +public final class DeployTableJoinColumn { /** * The local database column name. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocManys.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocManys.java index 1ca59dbc8..a98867a54 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocManys.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocManys.java @@ -41,7 +41,7 @@ import java.util.Set; /** * Read the deployment annotation for Assoc Many beans. */ -class AnnotationAssocManys extends AnnotationAssoc { +final class AnnotationAssocManys extends AnnotationAssoc { AnnotationAssocManys(DeployBeanInfo info, ReadAnnotationConfig readConfig, BeanDescriptorManager factory) { super(info, readConfig, factory); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocOnes.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocOnes.java index 36fa99b57..727fe7c83 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocOnes.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationAssocOnes.java @@ -30,7 +30,7 @@ import javax.persistence.PrimaryKeyJoinColumn; /** * Read the deployment annotations for Associated One beans. */ -public class AnnotationAssocOnes extends AnnotationAssoc { +final class AnnotationAssocOnes extends AnnotationAssoc { private static final Logger log = LoggerFactory.getLogger(AnnotationAssocOnes.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationClass.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationClass.java index 8985fb4ac..44a9d2113 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationClass.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationClass.java @@ -36,7 +36,7 @@ import static io.ebean.util.AnnotationUtil.typeGet; /** * Read the class level deployment annotations. */ -public class AnnotationClass extends AnnotationParser { +final class AnnotationClass extends AnnotationParser { private static final Logger logger = LoggerFactory.getLogger(AnnotationClass.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFields.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFields.java index 5a0caa287..b6d570817 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFields.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFields.java @@ -76,7 +76,7 @@ import java.util.UUID; /** * Read the field level deployment annotations. */ -public class AnnotationFields extends AnnotationParser { +final class AnnotationFields extends AnnotationParser { /** * If present read Jackson JsonIgnore. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFind.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFind.java index 0faf59837..386e08e64 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFind.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationFind.java @@ -15,7 +15,7 @@ import java.util.Set; import static io.ebean.util.AnnotationUtil.get; -public class AnnotationFind { +final class AnnotationFind { public static Set joinColumns(Field field) { final JoinColumn col = get(field, JoinColumn.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationSql.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationSql.java index 5001f2f70..955c119db 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationSql.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/AnnotationSql.java @@ -7,7 +7,7 @@ import io.ebeaninternal.server.deploy.BeanDescriptor; /** * Read the class level deployment annotations. */ -class AnnotationSql extends AnnotationParser { +final class AnnotationSql extends AnnotationParser { AnnotationSql(DeployBeanInfo info, ReadAnnotationConfig readConfig) { super(info, readConfig); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployBeanInfo.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployBeanInfo.java index 002cb5e0e..e87ff7754 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployBeanInfo.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployBeanInfo.java @@ -9,7 +9,7 @@ import io.ebeaninternal.server.rawsql.SpiRawSql; /** * Wraps information about a bean during deployment parsing. */ -public class DeployBeanInfo { +public final class DeployBeanInfo { private final DeployUtil util; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployCreateProperties.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployCreateProperties.java index 6fb54b46d..d3d7ddb7d 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployCreateProperties.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployCreateProperties.java @@ -35,7 +35,7 @@ import java.lang.reflect.WildcardType; * one or normal scalar property. *

*/ -public class DeployCreateProperties { +public final class DeployCreateProperties { private static final Logger logger = LoggerFactory.getLogger(DeployCreateProperties.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInherit.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInherit.java index fd9e4641b..7bc0ebd1b 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInherit.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInherit.java @@ -15,7 +15,7 @@ import java.util.Map; /** * Builds the InheritInfo deployment information. */ -public class DeployInherit { +public final class DeployInherit { private final Map, DeployInheritInfo> deployMap = new LinkedHashMap<>(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInheritInfo.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInheritInfo.java index fb1a65a54..d1af77c8c 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInheritInfo.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployInheritInfo.java @@ -12,7 +12,7 @@ import java.util.List; * Represents a node in the Inheritance tree. * Holds information regarding Super Subclass support. */ -public class DeployInheritInfo { +public final class DeployInheritInfo { /** * the default discriminator column according to the JPA 1.0 spec. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployUtil.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployUtil.java index 68cb1c741..276ff8d33 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployUtil.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/DeployUtil.java @@ -26,7 +26,7 @@ import java.sql.Types; /** * Utility object to help processing deployment information. */ -public class DeployUtil { +public final class DeployUtil { /** * Assumes CLOB rather than LONGVARCHAR. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/InitMetaJacksonAnnotation.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/InitMetaJacksonAnnotation.java index 08435de62..f283055ae 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/InitMetaJacksonAnnotation.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/InitMetaJacksonAnnotation.java @@ -1,6 +1,6 @@ package io.ebeaninternal.server.deploy.parse; -class InitMetaJacksonAnnotation { +final class InitMetaJacksonAnnotation { static void init(ReadAnnotationConfig readConfig) { readConfig.addMetaAnnotation(com.fasterxml.jackson.annotation.JacksonAnnotation.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotationConfig.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotationConfig.java index 1daf37564..81b5576e9 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotationConfig.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotationConfig.java @@ -15,7 +15,7 @@ import java.util.Set; /** * Configuration used when reading the deployment annotations. */ -class ReadAnnotationConfig { +final class ReadAnnotationConfig { private final GeneratedPropertyFactory generatedPropFactory; private final String asOfViewSuffix; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotations.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotations.java index da2bc6030..c4ab55a1b 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotations.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadAnnotations.java @@ -8,7 +8,7 @@ import io.ebeaninternal.server.deploy.generatedproperty.GeneratedPropertyFactory /** * Read the deployment annotations for the bean. */ -public class ReadAnnotations { +public final class ReadAnnotations { private final ReadAnnotationConfig readConfig; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJakarta.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJakarta.java index 016e9f13a..95046f25d 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJakarta.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJakarta.java @@ -12,7 +12,7 @@ import java.util.List; /** * Jakarta validation annotations reader. */ -class ReadValidationAnnotationsJakarta implements ReadValidationAnnotations { +final class ReadValidationAnnotationsJakarta implements ReadValidationAnnotations { ReadValidationAnnotationsJakarta(ReadAnnotationConfig readConfig) { readConfig.addMetaAnnotation(Size.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJavax.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJavax.java index a690e69de..4704bf766 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJavax.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/ReadValidationAnnotationsJavax.java @@ -12,7 +12,7 @@ import java.util.List; /** * Javax validation annotations reader. */ -class ReadValidationAnnotationsJavax implements ReadValidationAnnotations { +final class ReadValidationAnnotationsJavax implements ReadValidationAnnotations { ReadValidationAnnotationsJavax(ReadAnnotationConfig readConfig) { readConfig.addMetaAnnotation(Size.class); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/TransientProperties.java b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/TransientProperties.java index e7896b96a..be5b10aee 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/TransientProperties.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/deploy/parse/TransientProperties.java @@ -8,28 +8,22 @@ import io.ebeaninternal.server.deploy.meta.DeployBeanPropertyAssocOne; /** * Mark transient properties. */ -public class TransientProperties { - - public TransientProperties() { - } +public final class TransientProperties { /** * Mark any additional properties as transient. */ public void process(DeployBeanDescriptor desc) { - for (DeployBeanProperty prop : desc.propertiesBase()) { if (!prop.isDbRead() && !prop.isDbInsertable() && !prop.isDbUpdateable()) { prop.setTransient(); } } - for (DeployBeanPropertyAssocOne prop : desc.propertiesAssocOne()) { if (prop.getBeanTable() == null && !prop.isEmbedded()) { prop.setTransient(); } } - for (DeployBeanPropertyAssocMany prop : desc.propertiesAssocMany()) { if (prop.getBeanTable() == null) { prop.setTransient(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/rawsql/DRawSqlService.java b/ebean-core/src/main/java/io/ebeaninternal/server/rawsql/DRawSqlService.java index 11b80da38..8ffef8a33 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/rawsql/DRawSqlService.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/rawsql/DRawSqlService.java @@ -11,7 +11,7 @@ import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Types; -final class DRawSqlService implements SpiRawSqlService { +public final class DRawSqlService implements SpiRawSqlService { @Override public RawSql resultSet(ResultSet resultSet, String... propertyNames) { diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/util/ArrayStack.java b/ebean-core/src/main/java/io/ebeaninternal/server/util/ArrayStack.java index 8e824f664..4e76caea8 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/util/ArrayStack.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/util/ArrayStack.java @@ -7,7 +7,7 @@ import java.util.List; /** * Stack based on ArrayList. */ -public final class ArrayStack { +public class ArrayStack { private final List list; diff --git a/ebean-core/src/test/java/io/ebeaninternal/server/deploy/parse/AnnotationClassTest.java b/ebean-core/src/test/java/io/ebeaninternal/server/deploy/parse/AnnotationClassTest.java index 73aa23ced..5b543e764 100644 --- a/ebean-core/src/test/java/io/ebeaninternal/server/deploy/parse/AnnotationClassTest.java +++ b/ebean-core/src/test/java/io/ebeaninternal/server/deploy/parse/AnnotationClassTest.java @@ -1,12 +1,16 @@ package io.ebeaninternal.server.deploy.parse; +import io.ebean.config.DatabaseConfig; import io.ebean.config.ServerConfig; import io.ebean.config.dbplatform.sqlserver.SqlServer17Platform; import io.ebeaninternal.server.core.bootup.BootupClasses; +import io.ebeaninternal.server.deploy.generatedproperty.GeneratedPropertyFactory; import io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor; import io.ebeaninternal.server.type.DefaultTypeManager; import org.junit.Test; +import java.util.Collections; + import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; @@ -46,9 +50,8 @@ public class AnnotationClassTest { DeployUtil deployUtil = new DeployUtil(new DefaultTypeManager(config, new BootupClasses()), config); - DeployBeanInfo deployBeanInfo = new DeployBeanInfo(deployUtil, mock(DeployBeanDescriptor.class)); - ReadAnnotationConfig readAnnotationConfig = mock(ReadAnnotationConfig.class); - + DeployBeanInfo deployBeanInfo = new DeployBeanInfo(deployUtil, new DeployBeanDescriptor<>(null, null, null)); + ReadAnnotationConfig readAnnotationConfig = new ReadAnnotationConfig(new GeneratedPropertyFactory(true, new DatabaseConfig(), Collections.emptyList()), "","", new DatabaseConfig()); return new AnnotationClass(deployBeanInfo, readAnnotationConfig); } diff --git a/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/model/visitor/VisitAllUsing.java b/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/model/visitor/VisitAllUsing.java index 6ffbe1fd4..0cb6db92d 100644 --- a/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/model/visitor/VisitAllUsing.java +++ b/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/model/visitor/VisitAllUsing.java @@ -11,7 +11,7 @@ import java.util.List; * Makes use of BeanVisitor and PropertyVisitor to navigate BeanDescriptors * and their properties. */ -public class VisitAllUsing extends VisitProperties { +public final class VisitAllUsing extends VisitProperties { private final BeanVisitor visitor;