You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@freemarker.apache.org by dd...@apache.org on 2017/03/01 14:21:29 UTC
[31/50] [abbrv] incubator-freemarker git commit: Removed dynamic
java.lang.Enum access, as we require Java 5 now.
Removed dynamic java.lang.Enum access, as we require Java 5 now.
Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/bf58114b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/bf58114b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/bf58114b
Branch: refs/heads/2.3
Commit: bf58114b8ad8349ad6f2f770498eeb42bcfff707
Parents: f4d2ae3
Author: ddekany <dd...@apache.org>
Authored: Mon Feb 27 19:05:58 2017 +0100
Committer: ddekany <dd...@apache.org>
Committed: Mon Feb 27 19:05:58 2017 +0100
----------------------------------------------------------------------
.../java/freemarker/ext/beans/BeansWrapper.java | 36 ++------------------
1 file changed, 3 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/bf58114b/src/main/java/freemarker/ext/beans/BeansWrapper.java
----------------------------------------------------------------------
diff --git a/src/main/java/freemarker/ext/beans/BeansWrapper.java b/src/main/java/freemarker/ext/beans/BeansWrapper.java
index 9731975..372dc5a 100644
--- a/src/main/java/freemarker/ext/beans/BeansWrapper.java
+++ b/src/main/java/freemarker/ext/beans/BeansWrapper.java
@@ -67,7 +67,6 @@ import freemarker.template.Version;
import freemarker.template._TemplateAPI;
import freemarker.template.utility.ClassUtil;
import freemarker.template.utility.RichObjectWrapper;
-import freemarker.template.utility.UndeclaredThrowableException;
import freemarker.template.utility.WriteProtectable;
/**
@@ -94,8 +93,6 @@ public class BeansWrapper implements RichObjectWrapper, WriteProtectable {
@Deprecated
static final Object CAN_NOT_UNWRAP = ObjectWrapperAndUnwrapper.CANT_UNWRAP_TO_TARGET_CLASS;
- private static final Constructor<?> ENUMS_MODEL_CTOR = enumsModelCtor();
-
/**
* At this level of exposure, all methods and properties of the
* wrapped objects are exposed to the template.
@@ -350,9 +347,9 @@ public class BeansWrapper implements RichObjectWrapper, WriteProtectable {
falseModel = new BooleanModel(Boolean.FALSE, this);
trueModel = new BooleanModel(Boolean.TRUE, this);
- staticModels = new StaticModels(BeansWrapper.this);
- enumModels = createEnumModels(BeansWrapper.this);
- modelCache = new BeansModelCache(BeansWrapper.this);
+ staticModels = new StaticModels(this);
+ enumModels = new _EnumModels(this);
+ modelCache = new BeansModelCache(this);
setUseCache(bwConf.getUseModelCache());
finalizeConstruction(writeProtected);
@@ -1699,33 +1696,6 @@ public class BeansWrapper implements RichObjectWrapper, WriteProtectable {
+ (classIntrospector.isShared() ? "@" + System.identityHashCode(classIntrospector) : "none");
}
- private static ClassBasedModelFactory createEnumModels(BeansWrapper wrapper) {
- if (ENUMS_MODEL_CTOR != null) {
- try {
- return (ClassBasedModelFactory) ENUMS_MODEL_CTOR.newInstance(
- new Object[] { wrapper });
- } catch (Exception e) {
- throw new UndeclaredThrowableException(e);
- }
- } else {
- return null;
- }
- }
-
- private static Constructor enumsModelCtor() {
- try {
- // Check if Enums are available on this platform
- Class.forName("java.lang.Enum");
- // If they are, return the appropriate constructor for enum models
- return Class.forName(
- "freemarker.ext.beans._EnumModels").getDeclaredConstructor(
- new Class[] { BeansWrapper.class });
- } catch (Exception e) {
- // Otherwise, return null
- return null;
- }
- }
-
/**
* Used for
* {@link MethodAppearanceFineTuner#process}