You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2017/02/05 17:59:34 UTC
incubator-juneau git commit: Get rid of remaining toObjectMap()
method support.
Repository: incubator-juneau
Updated Branches:
refs/heads/master 21fcc1197 -> 1e968f3ac
Get rid of remaining toObjectMap() method support.
Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/1e968f3a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/1e968f3a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/1e968f3a
Branch: refs/heads/master
Commit: 1e968f3ac31523a89d2b514b08cbfd2ad0f8d1c0
Parents: 21fcc11
Author: JamesBognar <ja...@apache.org>
Authored: Sun Feb 5 12:59:30 2017 -0500
Committer: JamesBognar <ja...@apache.org>
Committed: Sun Feb 5 12:59:30 2017 -0500
----------------------------------------------------------------------
.../java/org/apache/juneau/jena/RdfParser.java | 7 ---
.../java/org/apache/juneau/BeanSession.java | 3 --
.../main/java/org/apache/juneau/ClassMeta.java | 48 --------------------
.../java/org/apache/juneau/html/HtmlParser.java | 4 --
.../java/org/apache/juneau/json/JsonParser.java | 4 --
.../apache/juneau/msgpack/MsgPackParser.java | 5 --
.../apache/juneau/urlencoding/UonParser.java | 4 --
.../juneau/urlencoding/UrlEncodingParser.java | 4 --
.../java/org/apache/juneau/xml/XmlParser.java | 4 --
juneau-core/src/main/javadoc/overview.html | 10 ++--
10 files changed, 7 insertions(+), 86 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
----------------------------------------------------------------------
diff --git a/juneau-core-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java b/juneau-core-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
index b18ab15..eec0ffc 100644
--- a/juneau-core-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
+++ b/juneau-core-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
@@ -323,13 +323,6 @@ public class RdfParser extends ReaderParser {
}
if (sType.isArray())
o = session.toArray(sType, (Collection)o);
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- Resource r = n.asResource();
- if (session.wasAlreadyProcessed(r))
- return null;
- Map m = new ObjectMap(session);
- parseIntoMap(session, r, m, eType.getKeyType(), eType.getValueType());
- o = sType.newInstanceFromObjectMap(session, outer, (ObjectMap)m);
} else if (sType.canCreateNewBean(outer)) {
Resource r = n.asResource();
if (session.wasAlreadyProcessed(r))
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/BeanSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/BeanSession.java b/juneau-core/src/main/java/org/apache/juneau/BeanSession.java
index e7a405d..dc54ac4 100644
--- a/juneau-core/src/main/java/org/apache/juneau/BeanSession.java
+++ b/juneau-core/src/main/java/org/apache/juneau/BeanSession.java
@@ -554,9 +554,6 @@ public class BeanSession extends Session {
if (type.isBean() && value instanceof Map)
return newBeanMap(tc).load((Map<?,?>) value).getBean();
- if (type.canCreateNewInstanceFromObjectMap(outer) && value instanceof ObjectMap)
- return type.newInstanceFromObjectMap(this, outer, (ObjectMap)value);
-
if (type.canCreateNewInstanceFromNumber(outer) && value instanceof Number)
return type.newInstanceFromNumber(this, outer, (Number)value);
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/ClassMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/ClassMeta.java b/juneau-core/src/main/java/org/apache/juneau/ClassMeta.java
index 74027e6..69c8b33 100644
--- a/juneau-core/src/main/java/org/apache/juneau/ClassMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/ClassMeta.java
@@ -1208,22 +1208,6 @@ public final class ClassMeta<T> implements Type {
}
/**
- * Returns <jk>true</jk> if this class can call the {@link #newInstanceFromString(Object, String)} method.
- *
- * @param outer The outer class object for non-static member classes. Can be <jk>null</jk> for non-member or static classes.
- * @return <jk>true</jk> if this class has a no-arg constructor or invocation handler.
- */
- public boolean canCreateNewInstanceFromObjectMap(Object outer) {
- // TODO - Get rid of?
- if (swapMethodType == ObjectMap.class && (swapConstructor != null || unswapMethod != null)) {
- if (isMemberClass)
- return outer != null && swapConstructor.getParameterTypes()[0] == outer.getClass();
- return true;
- }
- return false;
- }
-
- /**
* Returns the method annotated with {@link NameProperty @NameProperty}.
*
* @return The method annotated with {@link NameProperty @NameProperty} or <jk>null</jk> if method does not exist.
@@ -1341,38 +1325,6 @@ public final class ClassMeta<T> implements Type {
}
/**
- * Create a new instance of the main class of this declared type from an <code>ObjectMap</code> input.
- * <p>
- * In order to use this method, the class must have one of the following methods:
- * <ul>
- * <li><code><jk>public</jk> T(ObjectMap in);</code>
- * </ul>
- *
- * @param session The current bean session.
- * @param outer The outer class object for non-static member classes. Can be <jk>null</jk> for non-member or static classes.
- * @param arg The input argument value.
- * @return A new instance of the object.
- * @throws IllegalAccessException If the <code>Constructor</code> object enforces Java language access control and the underlying constructor is inaccessible.
- * @throws IllegalArgumentException If the parameter type on the method was invalid.
- * @throws InstantiationException If the class that declares the underlying constructor represents an abstract class, or
- * does not have one of the methods described above.
- * @throws InvocationTargetException If the underlying constructor throws an exception.
- */
- @SuppressWarnings("unchecked")
- public T newInstanceFromObjectMap(BeanSession session, Object outer, ObjectMap arg) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException, InstantiationException {
- // TODO - Get rid of?
- if (swapConstructor != null) {
- if (isMemberClass)
- return swapConstructor.newInstance(outer, arg);
- return swapConstructor.newInstance(arg);
- }
- if (unswapMethod != null) {
- return (T)unswapMethod.invoke(null, session, arg);
- }
- throw new InstantiationError("No map constructor method found for class '"+getInnerClass().getName()+"'");
- }
-
- /**
* Create a new instance of the main class of this declared type.
*
* @return A new instance of the object, or <jk>null</jk> if there is no no-arg constructor on the object.
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/html/HtmlParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/html/HtmlParser.java b/juneau-core/src/main/java/org/apache/juneau/html/HtmlParser.java
index 7757386..27ff24f 100644
--- a/juneau-core/src/main/java/org/apache/juneau/html/HtmlParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/html/HtmlParser.java
@@ -174,10 +174,6 @@ public final class HtmlParser extends XmlParser {
o = parseIntoMap(session, r, (Map)new ObjectMap(session), sType.getKeyType(), sType.getValueType(), pMeta);
} else if (sType.isMap()) {
o = parseIntoMap(session, r, (Map)(sType.canCreateNewInstance(outer) ? sType.newInstance(outer) : new ObjectMap(session)), sType.getKeyType(), sType.getValueType(), pMeta);
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- ObjectMap m = new ObjectMap(session);
- parseIntoMap(session, r, m, string(), object(), pMeta);
- o = sType.newInstanceFromObjectMap(session, outer, m);
} else if (sType.canCreateNewBean(outer)) {
BeanMap m = session.newBeanMap(outer, sType.getInnerClass());
o = parseIntoBean(session, r, m).getBean();
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java b/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
index 3289abe..da204bc 100644
--- a/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
@@ -163,10 +163,6 @@ public final class JsonParser extends ReaderParser {
Collection l = (sType.canCreateNewInstance(outer) ? (Collection)sType.newInstance() : new ObjectList(session));
o = parseIntoCollection2(session, r, l, sType.getElementType(), pMeta);
}
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- ObjectMap m = new ObjectMap(session);
- parseIntoMap2(session, r, m, string(), object(), pMeta);
- o = sType.newInstanceFromObjectMap(session, outer, m);
} else if (sType.canCreateNewBean(outer)) {
BeanMap m = session.newBeanMap(outer, sType.getInnerClass());
o = parseIntoBeanMap2(session, r, m).getBean();
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java
index acb5a3c..8ea0f4a 100644
--- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java
@@ -105,11 +105,6 @@ public final class MsgPackParser extends InputStreamParser {
} else {
throw new ParseException(session, "Invalid data type {0} encountered for parse type {1}", dt, sType);
}
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- ObjectMap m = new ObjectMap(session);
- for (int i = 0; i < length; i++)
- m.put(parseAnything(session, string(), is, outer, pMeta), parseAnything(session, object(), is, m, pMeta));
- o = sType.newInstanceFromObjectMap(session, outer, m);
} else if (sType.canCreateNewBean(outer)) {
if (dt == MAP) {
BeanMap m = session.newBeanMap(outer, sType.getInnerClass());
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
index c6a3b97..0b78561 100644
--- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
@@ -154,10 +154,6 @@ public class UonParser extends ReaderParser {
Collection l = (sType.canCreateNewInstance(outer) ? (Collection)sType.newInstance(outer) : new ObjectList(session));
o = parseIntoCollection(session, r, l, sType.getElementType(), isUrlParamValue, pMeta);
}
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- ObjectMap m = new ObjectMap(session);
- parseIntoMap(session, r, m, string(), object(), pMeta);
- o = sType.newInstanceFromObjectMap(session, outer, m);
} else if (sType.canCreateNewBean(outer)) {
BeanMap m = session.newBeanMap(outer, sType.getInnerClass());
m = parseIntoBeanMap(session, r, m);
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
index acb6827..89d428e 100644
--- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
@@ -88,10 +88,6 @@ public class UrlEncodingParser extends UonParser {
} else if (sType.isMap()) {
Map m = (sType.canCreateNewInstance() ? (Map)sType.newInstance() : new ObjectMap(session));
o = parseIntoMap(session, r, m, sType.getKeyType(), sType.getValueType());
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- ObjectMap m = new ObjectMap(session);
- parseIntoMap(session, r, m, string(), object());
- o = sType.newInstanceFromObjectMap(session, outer, m);
} else if (sType.canCreateNewBean(outer)) {
BeanMap m = session.newBeanMap(outer, sType.getInnerClass());
m = parseIntoBeanMap(session, r, m);
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java b/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java
index 0e39e89..29dea9f 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java
@@ -141,10 +141,6 @@ public class XmlParser extends ReaderParser {
o = parseIntoCollection(session, r, l, sType.getElementType(), pMeta);
} else if (sType.isNumber()) {
o = parseNumber(session.getElementText(r), (Class<? extends Number>)sType.getInnerClass());
- } else if (sType.canCreateNewInstanceFromObjectMap(outer)) {
- ObjectMap m = new ObjectMap(session);
- parseIntoMap(session, r, m, string(), object(), pMeta);
- o = sType.newInstanceFromObjectMap(session, outer, m);
} else if (sType.canCreateNewBean(outer)) {
if (sType.getExtendedMeta(XmlClassMeta.class).getFormat() == COLLAPSED) {
String fieldName = r.getLocalName();
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/1e968f3a/juneau-core/src/main/javadoc/overview.html
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/javadoc/overview.html b/juneau-core/src/main/javadoc/overview.html
index b91970d..1f11fbe 100644
--- a/juneau-core/src/main/javadoc/overview.html
+++ b/juneau-core/src/main/javadoc/overview.html
@@ -5468,9 +5468,13 @@
<li>{@link org.apache.juneau.transform.PojoSwap#swap(BeanSession,Object)}
<li>{@link org.apache.juneau.transform.PojoSwap#unswap(BeanSession,Object,ClassMeta)}
</ul>
- <li>Replaced support for <code>toObjectMap()</code> and <code>fromObjectMap()/T(ObjectMap)</code> methods with
- generalized <code>swap(BeanSession)</code>/<code>unswap(BeanSession,X)</code>/<code>T(BeanSession,X)</code> methods.<br>
- See new section <a class='doclink' href='#Core.SwapMethods'>Swap methods</a> for information.
+ <li>General code improvements made to {@link org.apache.juneau.ClassMeta} class.
+ <ul>
+ <li>All fields are now final which should improve overall performance.
+ <li>Replaced support for <code>toObjectMap()</code> and <code>fromObjectMap()/T(ObjectMap)</code> methods with
+ generalized <code>swap(BeanSession)</code>/<code>unswap(BeanSession,X)</code>/<code>T(BeanSession,X)</code> methods.<br>
+ See new section <a class='doclink' href='#Core.SwapMethods'>Swap methods</a> for information.
+ </ul>
<li>Session-level media type now available through {@link org.apache.juneau.BeanSession#getMediaType()} method.
Allows for swaps and serializer/parser behavior to be tailored to individual media types.
<li>Several new {@link java.util.Calendar} and {@link java.util.Date} swaps: