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 2016/08/29 13:54:47 UTC
incubator-juneau git commit: Replace @BeanProperty(beanUri=true) with
@Rdf(beanUri=true)
Repository: incubator-juneau
Updated Branches:
refs/heads/master 83f2b35ba -> 4b2719c0d
Replace @BeanProperty(beanUri=true) with @Rdf(beanUri=true)
Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/4b2719c0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/4b2719c0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/4b2719c0
Branch: refs/heads/master
Commit: 4b2719c0d3d024a15185688b852bb11608ef9557
Parents: 83f2b35
Author: jamesbognar <ja...@gmail.com>
Authored: Mon Aug 29 09:54:42 2016 -0400
Committer: jamesbognar <ja...@gmail.com>
Committed: Mon Aug 29 09:54:42 2016 -0400
----------------------------------------------------------------------
.../main/java/org/apache/juneau/BeanMap.java | 25 --------
.../main/java/org/apache/juneau/BeanMeta.java | 26 +-------
.../org/apache/juneau/BeanPropertyMeta.java | 14 +----
.../apache/juneau/annotation/BeanProperty.java | 16 -----
.../juneau/html/HtmlSerializerSession.java | 2 +-
.../org/apache/juneau/jena/RdfBeanMeta.java | 63 ++++++++++++++++++++
.../apache/juneau/jena/RdfBeanPropertyMeta.java | 15 ++++-
.../apache/juneau/jena/RdfCommonContext.java | 3 +-
.../java/org/apache/juneau/jena/RdfParser.java | 5 +-
.../org/apache/juneau/jena/RdfSerializer.java | 18 ++++--
.../org/apache/juneau/jena/annotation/Rdf.java | 11 ++++
.../org/apache/juneau/json/JsonSerializer.java | 2 +-
.../juneau/msgpack/MsgPackSerializer.java | 2 +-
.../juneau/urlencoding/UonSerializer.java | 2 +-
.../apache/juneau/xml/XmlBeanPropertyMeta.java | 3 -
.../org/apache/juneau/xml/XmlSerializer.java | 2 +-
.../java/org/apache/juneau/html/CommonTest.java | 3 +-
.../java/org/apache/juneau/jena/CommonTest.java | 3 +-
.../org/apache/juneau/jena/CommonXmlTest.java | 7 ++-
.../org/apache/juneau/jena/RdfParserTest.java | 4 +-
.../java/org/apache/juneau/jena/RdfTest.java | 7 +--
.../java/org/apache/juneau/json/CommonTest.java | 2 +-
.../org/apache/juneau/testbeans/TestURI.java | 6 +-
.../juneau/urlencoding/Common_UonTest.java | 2 +-
.../urlencoding/Common_UrlEncodingTest.java | 2 +-
.../java/org/apache/juneau/xml/CommonTest.java | 3 +-
.../org/apache/juneau/xml/CommonXmlTest.java | 5 +-
.../java/org/apache/juneau/xml/XmlTest.java | 7 ++-
.../juneau/samples/addressbook/Address.java | 3 +-
.../juneau/samples/addressbook/Person.java | 2 +-
30 files changed, 143 insertions(+), 122 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/BeanMap.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/BeanMap.java b/juneau-core/src/main/java/org/apache/juneau/BeanMap.java
index 5a23ad8..9e39951 100644
--- a/juneau-core/src/main/java/org/apache/juneau/BeanMap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/BeanMap.java
@@ -153,29 +153,6 @@ public class BeanMap<T> extends AbstractMap<String,Object> implements Delegate<T
}
/**
- * Returns the value of the property identified as the URI property (annotated with {@link BeanProperty#beanUri()} as <jk>true</jk>).
- *
- * @return The URI value, or <jk>null</jk> if no URI property exists on this bean.
- */
- public Object getBeanUri() {
- BeanMeta<T> bm = getMeta();
- return bm.hasBeanUriProperty() ? bm.getBeanUriProperty().get(this) : null;
- }
-
- /**
- * Sets the bean URI property if the bean has a URI property.
- * Ignored otherwise.
- *
- * @param o The bean URI object.
- * @return If the bean context setting {@code beanMapPutReturnsOldValue} is <jk>true</jk>, then the old value of the property is returned.
- * Otherwise, this method always returns <jk>null</jk>.
- */
- public Object putBeanUri(Object o) {
- BeanMeta<T> bm = getMeta();
- return bm.hasBeanUriProperty() ? bm.getBeanUriProperty().set(this, o) : null;
- }
-
- /**
* Sets a property on the bean.
* <p>
* If there is a {@link PojoSwap} associated with this bean property or bean property type class, then
@@ -221,8 +198,6 @@ public class BeanMap<T> extends AbstractMap<String,Object> implements Delegate<T
if (p == null) {
if (meta.ctx.ignoreUnknownBeanProperties)
return null;
- if (property.equals("<uri>") && meta.uriProperty != null)
- return meta.uriProperty.set(this, value);
// If this bean has subtypes, and we haven't set the subtype yet,
// store the property in a temporary cache until the bean can be instantiated.
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/BeanMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/BeanMeta.java b/juneau-core/src/main/java/org/apache/juneau/BeanMeta.java
index 840b68b..6322d3f 100644
--- a/juneau-core/src/main/java/org/apache/juneau/BeanMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/BeanMeta.java
@@ -94,9 +94,8 @@ public class BeanMeta<T> {
private final MetadataMap extMeta; // Extended metadata
// Other fields
- final BeanPropertyMeta uriProperty; // The property identified as the URI for this bean (annotated with @BeanProperty.beanUri).
final BeanPropertyMeta subTypeIdProperty; // The property indentified as the sub type differentiator property (identified by @Bean.subTypeProperty annotation).
- private final BeanPropertyMeta classProperty; // "_class" mock bean property.
+ private final BeanPropertyMeta classProperty; // "_class" mock bean property.
final String notABeanReason;
@@ -124,7 +123,6 @@ public class BeanMeta<T> {
this.constructor = b.constructor;
this.constructorArgs = b.constructorArgs;
this.extMeta = b.extMeta;
- this.uriProperty = b.uriProperty;
this.subTypeIdProperty = b.subTypeIdProperty;
this.classProperty = new BeanPropertyMeta(this, "_class", ctx.string());
}
@@ -142,7 +140,6 @@ public class BeanMeta<T> {
Constructor<T> constructor;
String[] constructorArgs = new String[0];
MetadataMap extMeta = new MetadataMap();
- BeanPropertyMeta uriProperty;
BeanPropertyMeta subTypeIdProperty;
PropertyNamer propertyNamer;
@@ -303,9 +300,6 @@ public class BeanMeta<T> {
if (p.getSetter() != null)
setterProps.put(p.getSetter(), p.getName());
- if (p.isBeanUri())
- uriProperty = p;
-
} else {
i.remove();
}
@@ -439,24 +433,6 @@ public class BeanMeta<T> {
}
/**
- * Returns <jk>true</jk> if one of the properties on this bean is annotated with {@link BeanProperty#beanUri()} as <jk>true</jk>
- *
- * @return <jk>true</jk> if this bean has subtypes associated with it. <jk>true</jk> if there is a URI property associated with this bean.
- */
- public boolean hasBeanUriProperty() {
- return uriProperty != null;
- }
-
- /**
- * Returns the bean property marked as the URI for the bean (annotated with {@link BeanProperty#beanUri()} as <jk>true</jk>).
- *
- * @return The URI property, or <jk>null</jk> if no URI property exists on this bean.
- */
- public BeanPropertyMeta getBeanUriProperty() {
- return uriProperty;
- }
-
- /**
* Returns a mock bean property that resolves to the name <js>"_class"</js> and whose value always resolves
* to the class name of the bean.
*
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/BeanPropertyMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/BeanPropertyMeta.java b/juneau-core/src/main/java/org/apache/juneau/BeanPropertyMeta.java
index 0d0a8b4..c2ab10d 100644
--- a/juneau-core/src/main/java/org/apache/juneau/BeanPropertyMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/BeanPropertyMeta.java
@@ -46,7 +46,7 @@ public class BeanPropertyMeta {
private Field field;
private Method getter, setter;
- private boolean isConstructorArg, isBeanUri, isUri;
+ private boolean isConstructorArg, isUri;
private final BeanMeta<?> beanMeta;
@@ -189,15 +189,6 @@ public class BeanPropertyMeta {
}
/**
- * Returns <jk>true</jk> if this bean property is marked with {@link BeanProperty#beanUri()} as <jk>true</jk>.
- *
- * @return <jk>true</jk> if this bean property is marked with {@link BeanProperty#beanUri()} as <jk>true</jk>.
- */
- public boolean isBeanUri() {
- return isBeanUri;
- }
-
- /**
* Returns <jk>true</jk> if this bean property is a URI.
* <p>
* A bean property can be considered a URI if any of the following are true:
@@ -249,7 +240,6 @@ public class BeanPropertyMeta {
swap = getPropertyPojoSwap(p);
if (p.properties().length != 0)
properties = p.properties();
- isBeanUri |= p.beanUri();
}
}
@@ -263,7 +253,6 @@ public class BeanPropertyMeta {
swap = getPropertyPojoSwap(p);
if (properties != null && p.properties().length != 0)
properties = p.properties();
- isBeanUri |= p.beanUri();
}
}
@@ -277,7 +266,6 @@ public class BeanPropertyMeta {
swap = getPropertyPojoSwap(p);
if (properties != null && p.properties().length != 0)
properties = p.properties();
- isBeanUri |= p.beanUri();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/annotation/BeanProperty.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/annotation/BeanProperty.java b/juneau-core/src/main/java/org/apache/juneau/annotation/BeanProperty.java
index 7363290..81a3b0d 100644
--- a/juneau-core/src/main/java/org/apache/juneau/annotation/BeanProperty.java
+++ b/juneau-core/src/main/java/org/apache/juneau/annotation/BeanProperty.java
@@ -20,10 +20,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.internal.*;
-import org.apache.juneau.jena.*;
import org.apache.juneau.transform.*;
-import org.apache.juneau.xml.*;
-import org.apache.juneau.xml.annotation.*;
/**
* Used tailor how bean properties get interpreted by the framework.
@@ -170,18 +167,5 @@ public @interface BeanProperty {
* </dl>
*/
String[] properties() default {};
-
- /**
- * Marks a bean property as a resource URI identifier for the bean.
- * <p>
- * Has the following effects on the following serializers:
- * <ul class='spaced-list'>
- * <li>{@link XmlSerializer} - Will be rendered as an XML attribute on the bean element, unless
- * marked with a {@link Xml#format} value of {@link XmlFormat#ELEMENT}.
- * <li>{@link RdfSerializer} - Will be rendered as the value of the <js>"rdf:about"</js> attribute
- * for the bean.
- * </ul>
- */
- boolean beanUri() default false;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/html/HtmlSerializerSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/html/HtmlSerializerSession.java b/juneau-core/src/main/java/org/apache/juneau/html/HtmlSerializerSession.java
index 3cf27fb..52b1293 100644
--- a/juneau-core/src/main/java/org/apache/juneau/html/HtmlSerializerSession.java
+++ b/juneau-core/src/main/java/org/apache/juneau/html/HtmlSerializerSession.java
@@ -92,7 +92,7 @@ public class HtmlSerializerSession extends XmlSerializerSession {
public boolean isUri(ClassMeta<?> cm, BeanPropertyMeta pMeta, Object o) {
if (cm.isUri())
return true;
- if (pMeta != null && (pMeta.isUri() || pMeta.isBeanUri()))
+ if (pMeta != null && pMeta.isUri())
return true;
if (detectLinksInStrings && o instanceof CharSequence && urlPattern.matcher(o.toString()).matches())
return true;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanMeta.java b/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanMeta.java
new file mode 100644
index 0000000..2991d24
--- /dev/null
+++ b/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanMeta.java
@@ -0,0 +1,63 @@
+/***************************************************************************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations under the License.
+ ***************************************************************************************************************************/
+package org.apache.juneau.jena;
+
+import org.apache.juneau.*;
+import org.apache.juneau.jena.annotation.*;
+
+/**
+ * Metadata on beans specific to the RDF serializers and parsers pulled from the {@link Rdf @Rdf} annotation on the class.
+ *
+ * @author James Bognar (james.bognar@salesforce.com)
+ */
+public class RdfBeanMeta extends BeanMetaExtended {
+
+ // RDF related fields
+ private final BeanPropertyMeta beanUriProperty; // Bean property that identifies the URI of the bean.
+
+ /**
+ * Constructor.
+ *
+ * @param beanMeta The metadata on the bean that this metadata applies to.
+ */
+ public RdfBeanMeta(BeanMeta<?> beanMeta) {
+ super(beanMeta);
+
+ BeanPropertyMeta t_beanUriProperty = null;
+ for (BeanPropertyMeta p : beanMeta.getPropertyMetas()) {
+ RdfBeanPropertyMeta bpm = p.getExtendedMeta(RdfBeanPropertyMeta.class);
+ if (bpm.isBeanUri())
+ t_beanUriProperty = p;
+ }
+
+ this.beanUriProperty = t_beanUriProperty;
+ }
+
+ /**
+ * Returns <jk>true</jk> if one of the properties on this bean is annotated with {@link Rdf#beanUri()} as <jk>true</jk>
+ *
+ * @return <jk>true</jk> if there is a URI property associated with this bean.
+ */
+ public boolean hasBeanUri() {
+ return beanUriProperty != null;
+ }
+
+ /**
+ * Returns the bean property marked as the URI for the bean (annotated with {@link Rdf#beanUri()} as <jk>true</jk>).
+ *
+ * @return The URI property, or <jk>null</jk> if no URI property exists on this bean.
+ */
+ public BeanPropertyMeta getBeanUriProperty() {
+ return beanUriProperty;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanPropertyMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanPropertyMeta.java b/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanPropertyMeta.java
index f03c285..5d65481 100644
--- a/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanPropertyMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/jena/RdfBeanPropertyMeta.java
@@ -29,6 +29,7 @@ public class RdfBeanPropertyMeta extends BeanPropertyMetaExtended {
private RdfCollectionFormat collectionFormat = DEFAULT;
private Namespace namespace = null;
+ private boolean isBeanUri;
/**
* Constructor.
@@ -41,9 +42,12 @@ public class RdfBeanPropertyMeta extends BeanPropertyMetaExtended {
List<Rdf> rdfs = bpm.findAnnotations(Rdf.class);
List<RdfSchema> schemas = bpm.findAnnotations(RdfSchema.class);
- for (Rdf rdf : rdfs)
+ for (Rdf rdf : rdfs) {
if (collectionFormat == DEFAULT)
collectionFormat = rdf.collectionFormat();
+ if (rdf.beanUri())
+ isBeanUri = true;
+ }
namespace = RdfUtils.findNamespace(rdfs, schemas);
}
@@ -79,4 +83,13 @@ public class RdfBeanPropertyMeta extends BeanPropertyMetaExtended {
public Namespace getNamespace() {
return namespace;
}
+
+ /**
+ * Returns <jk>true</jk> if this bean property is marked with {@link Rdf#beanUri()} as <jk>true</jk>.
+ *
+ * @return <jk>true</jk> if this bean property is marked with {@link Rdf#beanUri()} as <jk>true</jk>.
+ */
+ public boolean isBeanUri() {
+ return isBeanUri;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/jena/RdfCommonContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/jena/RdfCommonContext.java b/juneau-core/src/main/java/org/apache/juneau/jena/RdfCommonContext.java
index 0220c3d..9996b5d 100644
--- a/juneau-core/src/main/java/org/apache/juneau/jena/RdfCommonContext.java
+++ b/juneau-core/src/main/java/org/apache/juneau/jena/RdfCommonContext.java
@@ -14,7 +14,6 @@ package org.apache.juneau.jena;
import java.util.*;
-import org.apache.juneau.annotation.*;
import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.xml.*;
import org.apache.juneau.xml.annotation.*;
@@ -354,7 +353,7 @@ public interface RdfCommonContext {
* when serialized as loose collections.
* <p>
* This setting is typically only useful if the beans being parsed into do not have a bean property
- * annotated with {@link BeanProperty#beanUri @BeanProperty(beanUri=true)}.
+ * annotated with {@link Rdf#beanUri @Rdf(beanUri=true)}.
*
* <dl>
* <dt>Example:</dt>
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/jena/RdfParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/jena/RdfParser.java b/juneau-core/src/main/java/org/apache/juneau/jena/RdfParser.java
index 80349d8..fc3810d 100644
--- a/juneau-core/src/main/java/org/apache/juneau/jena/RdfParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/jena/RdfParser.java
@@ -183,8 +183,9 @@ public class RdfParser extends ReaderParser {
private <T> BeanMap<T> parseIntoBeanMap(RdfParserSession session, Resource r2, BeanMap<T> m) throws Exception {
BeanMeta<T> bm = m.getMeta();
- if (bm.hasBeanUriProperty() && r2.getURI() != null)
- m.putBeanUri(r2.getURI());
+ RdfBeanMeta rbm = bm.getExtendedMeta(RdfBeanMeta.class);
+ if (rbm.hasBeanUri() && r2.getURI() != null)
+ rbm.getBeanUriProperty().set(m, r2.getURI());
Property subTypeIdProperty = null;
BeanPropertyMeta stp = bm.getSubTypeIdProperty();
if (stp != null) {
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/jena/RdfSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/jena/RdfSerializer.java b/juneau-core/src/main/java/org/apache/juneau/jena/RdfSerializer.java
index 400e742..bdc7e95 100644
--- a/juneau-core/src/main/java/org/apache/juneau/jena/RdfSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/jena/RdfSerializer.java
@@ -219,8 +219,12 @@ public class RdfSerializer extends WriterSerializer {
} else if (gType.isMap() || (wType != null && wType.isMap())) {
if (o instanceof BeanMap) {
BeanMap bm = (BeanMap)o;
- String uri = getUri(session, bm.getBeanUri(), null);
- n = m.createResource(uri);
+ Object uri = null;
+ RdfBeanMeta rbm = (RdfBeanMeta)bm.getMeta().getExtendedMeta(RdfBeanMeta.class);
+ if (rbm.hasBeanUri())
+ uri = rbm.getBeanUriProperty().get(bm);
+ String uri2 = getUri(session, uri, null);
+ n = m.createResource(uri2);
serializeBeanMap(session, bm, (Resource)n);
} else {
Map m2 = (Map)o;
@@ -235,8 +239,12 @@ public class RdfSerializer extends WriterSerializer {
} else if (gType.isBean()) {
BeanMap bm = bc.forBean(o);
- String uri = getUri(session, bm.getBeanUri(), null);
- n = m.createResource(uri);
+ Object uri = null;
+ RdfBeanMeta rbm = (RdfBeanMeta)bm.getMeta().getExtendedMeta(RdfBeanMeta.class);
+ if (rbm.hasBeanUri())
+ uri = rbm.getBeanUriProperty().get(bm);
+ String uri2 = getUri(session, uri, null);
+ n = m.createResource(uri2);
serializeBeanMap(session, bm, (Resource)n);
} else if (gType.isCollection() || gType.isArray() || (wType != null && wType.isCollection())) {
@@ -323,7 +331,7 @@ public class RdfSerializer extends WriterSerializer {
BeanPropertyMeta pMeta = bpv.getMeta();
ClassMeta<?> cm = pMeta.getClassMeta();
- if (pMeta.isBeanUri())
+ if (pMeta.getExtendedMeta(RdfBeanPropertyMeta.class).isBeanUri())
continue;
String key = bpv.getName();
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/jena/annotation/Rdf.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/jena/annotation/Rdf.java b/juneau-core/src/main/java/org/apache/juneau/jena/annotation/Rdf.java
index 1b45cfa..3896385 100644
--- a/juneau-core/src/main/java/org/apache/juneau/jena/annotation/Rdf.java
+++ b/juneau-core/src/main/java/org/apache/juneau/jena/annotation/Rdf.java
@@ -59,4 +59,15 @@ public @interface Rdf {
* @see RdfCollectionFormat
*/
RdfCollectionFormat collectionFormat() default RdfCollectionFormat.DEFAULT;
+
+ /**
+ * Marks a bean property as a resource URI identifier for the bean.
+ * <p>
+ * Has the following effects on the following serializers:
+ * <ul class='spaced-list'>
+ * <li>{@link RdfSerializer} - Will be rendered as the value of the <js>"rdf:about"</js> attribute
+ * for the bean.
+ * </ul>
+ */
+ boolean beanUri() default false;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java b/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java
index 24c3913..05ece00 100644
--- a/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java
@@ -213,7 +213,7 @@ public class JsonSerializer extends WriterSerializer {
serializeMap(session, out, gType.toObjectMap(o), gType);
else if (gType.isBean())
serializeBeanMap(session, out, bc.forBean(o), addClassAttr);
- else if (gType.isUri() || (pMeta != null && (pMeta.isUri() || pMeta.isBeanUri())))
+ else if (gType.isUri() || (pMeta != null && pMeta.isUri()))
out.q().appendUri(o).q();
else if (gType.isMap()) {
if (o instanceof BeanMap)
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
index a62ac79..f66452f 100644
--- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java
@@ -99,7 +99,7 @@ public class MsgPackSerializer extends OutputStreamSerializer {
serializeMap(session, out, gType.toObjectMap(o), gType);
else if (gType.isBean())
serializeBeanMap(session, out, bc.forBean(o), addClassAttr);
- else if (gType.isUri() || (pMeta != null && (pMeta.isUri() || pMeta.isBeanUri())))
+ else if (gType.isUri() || (pMeta != null && pMeta.isUri()))
out.appendString(session.resolveUri(o.toString()));
else if (gType.isMap()) {
if (o instanceof BeanMap)
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java
index 2e5ef25..b5204d1 100644
--- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java
@@ -291,7 +291,7 @@ public class UonSerializer extends WriterSerializer {
serializeMap(session, out, gType.toObjectMap(o), eType);
else if (gType.isBean())
serializeBeanMap(session, out, bc.forBean(o), addClassAttr);
- else if (gType.isUri() || (pMeta != null && (pMeta.isUri() || pMeta.isBeanUri())))
+ else if (gType.isUri() || (pMeta != null && pMeta.isUri()))
out.appendUri(o, isTop);
else if (gType.isMap()) {
if (o instanceof BeanMap)
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/xml/XmlBeanPropertyMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/xml/XmlBeanPropertyMeta.java b/juneau-core/src/main/java/org/apache/juneau/xml/XmlBeanPropertyMeta.java
index 21ed6ea..c485df7 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlBeanPropertyMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlBeanPropertyMeta.java
@@ -46,9 +46,6 @@ public class XmlBeanPropertyMeta extends BeanPropertyMetaExtended {
if (namespace == null)
namespace = bpm.getBeanMeta().getClassMeta().getExtendedMeta(XmlClassMeta.class).getNamespace();
-
- if (bpm.isBeanUri() && xmlFormat != XmlFormat.ELEMENT)
- xmlFormat = XmlFormat.ATTR;
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializer.java b/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializer.java
index a30d902..0dcbf0b 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializer.java
@@ -548,7 +548,7 @@ public class XmlSerializer extends WriterSerializer {
Namespace ns = (session.isEnableNamespaces() && pMeta.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace() != elementNs ? pMeta.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace() : null);
- if (pMeta.isBeanUri() || pMeta.isUri())
+ if (pMeta.isUri())
out.attrUri(ns, key, value);
else
out.attr(ns, key, value);
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/html/CommonTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/html/CommonTest.java b/juneau-core/src/test/java/org/apache/juneau/html/CommonTest.java
index d7032af..cbe2137 100755
--- a/juneau-core/src/test/java/org/apache/juneau/html/CommonTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/html/CommonTest.java
@@ -23,6 +23,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
+import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.serializer.*;
import org.apache.juneau.testbeans.*;
import org.apache.juneau.xml.*;
@@ -240,7 +241,7 @@ public class CommonTest {
}
public static class G {
- @BeanProperty(beanUri=true) public URI uri;
+ public URI uri;
public URI f1;
public URL f2;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/jena/CommonTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/jena/CommonTest.java b/juneau-core/src/test/java/org/apache/juneau/jena/CommonTest.java
index 3e9313c..45d77cc 100755
--- a/juneau-core/src/test/java/org/apache/juneau/jena/CommonTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/jena/CommonTest.java
@@ -24,6 +24,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
import org.apache.juneau.internal.*;
+import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.serializer.*;
import org.apache.juneau.testbeans.*;
import org.apache.juneau.xml.*;
@@ -273,7 +274,7 @@ public class CommonTest {
}
public static class G {
- @BeanProperty(beanUri=true) public URI uri;
+ @Rdf(beanUri=true) public URI uri;
public URI f1;
public URL f2;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/jena/CommonXmlTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/jena/CommonXmlTest.java b/juneau-core/src/test/java/org/apache/juneau/jena/CommonXmlTest.java
index f371d67..f739cc2 100755
--- a/juneau-core/src/test/java/org/apache/juneau/jena/CommonXmlTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/jena/CommonXmlTest.java
@@ -19,7 +19,8 @@ import static org.junit.Assert.*;
import java.net.*;
-import org.apache.juneau.annotation.*;
+import org.apache.juneau.jena.annotation.*;
+import org.apache.juneau.xml.annotation.*;
import org.junit.*;
@SuppressWarnings("javadoc")
@@ -55,7 +56,7 @@ public class CommonXmlTest {
}
public static class A {
- @BeanProperty(beanUri=true) public URL url;
+ @Rdf(beanUri=true) @Xml(format=XmlFormat.ATTR) public URL url;
public String name;
public static A create() throws Exception {
@@ -83,7 +84,7 @@ public class CommonXmlTest {
}
public static class B {
- @BeanProperty(beanUri=true) public URL url;
+ @Rdf(beanUri=true) @Xml(format=XmlFormat.ATTR) public URL url;
public URL url2;
public static B create() throws Exception {
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/jena/RdfParserTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/jena/RdfParserTest.java b/juneau-core/src/test/java/org/apache/juneau/jena/RdfParserTest.java
index 21c4573..522604d 100755
--- a/juneau-core/src/test/java/org/apache/juneau/jena/RdfParserTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/jena/RdfParserTest.java
@@ -104,7 +104,7 @@ public class RdfParserTest {
public static class A {
public int f1;
public String f2;
- @BeanProperty(beanUri=true) public URI f3;
+ @Rdf(beanUri=true) public URI f3;
public URI f4a, f4b;
@BeanProperty(swap=CalendarSwap.ISO8601DTZ.class) public Calendar f5;
public LinkedList<A1> f6 = new LinkedList<A1>();
@@ -129,7 +129,7 @@ public class RdfParserTest {
public static class A1 {
public int f1;
public String f2;
- @BeanProperty(beanUri=true) public URI f3;
+ @Rdf(beanUri=true) public URI f3;
public URI f4a, f4b;
@BeanProperty(swap=CalendarSwap.ISO8601DTZ.class) public Calendar f5;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/jena/RdfTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/jena/RdfTest.java b/juneau-core/src/test/java/org/apache/juneau/jena/RdfTest.java
index 835fe5b..b698108 100755
--- a/juneau-core/src/test/java/org/apache/juneau/jena/RdfTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/jena/RdfTest.java
@@ -19,7 +19,6 @@ import static org.apache.juneau.jena.RdfSerializerContext.*;
import java.net.URI;
import java.util.*;
-import org.apache.juneau.annotation.*;
import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.serializer.*;
@@ -178,7 +177,7 @@ public class RdfTest {
@Rdf(prefix="a", namespace="http://ns/")
public static class A {
- @BeanProperty(beanUri=true) public URI f1;
+ @Rdf(beanUri=true) public URI f1;
public String[] f2;
public List<Integer> f3;
@@ -344,7 +343,7 @@ public class RdfTest {
@Rdf(prefix="b", namespace="http://ns/")
public static class B {
- @BeanProperty(beanUri=true) public URI f1;
+ @Rdf(beanUri=true) public URI f1;
@Rdf(collectionFormat=RdfCollectionFormat.SEQ)
public String[] f2;
@@ -582,7 +581,7 @@ public class RdfTest {
}
public static class D {
- @BeanProperty(beanUri=true) public URI f1;
+ @Rdf(beanUri=true) public URI f1;
public String f2;
public URI f3;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/json/CommonTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/json/CommonTest.java b/juneau-core/src/test/java/org/apache/juneau/json/CommonTest.java
index 0c69784..2a71046 100755
--- a/juneau-core/src/test/java/org/apache/juneau/json/CommonTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/json/CommonTest.java
@@ -239,7 +239,7 @@ public class CommonTest {
}
public static class G {
- @BeanProperty(beanUri=true) public URI uri;
+ public URI uri;
public URI f1;
public URL f2;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/testbeans/TestURI.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/testbeans/TestURI.java b/juneau-core/src/test/java/org/apache/juneau/testbeans/TestURI.java
index 0baa4dd..d4632b6 100755
--- a/juneau-core/src/test/java/org/apache/juneau/testbeans/TestURI.java
+++ b/juneau-core/src/test/java/org/apache/juneau/testbeans/TestURI.java
@@ -16,11 +16,15 @@ import java.net.*;
import java.net.URI;
import org.apache.juneau.annotation.*;
+import org.apache.juneau.jena.annotation.*;
+import org.apache.juneau.xml.annotation.*;
@SuppressWarnings("javadoc")
@Bean(sort=true)
public class TestURI {
- @BeanProperty(beanUri=true)
+ @org.apache.juneau.annotation.URI
+ @Rdf(beanUri=true)
+ @Xml(format=XmlFormat.ATTR)
public String f0 = "f0/x0";
public URI f1, f2, f3;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UonTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UonTest.java b/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UonTest.java
index b177d15..52ee64a 100755
--- a/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UonTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UonTest.java
@@ -235,7 +235,7 @@ public class Common_UonTest {
}
public static class G {
- @BeanProperty(beanUri=true) public URI uri;
+ public URI uri;
public URI f1;
public URL f2;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UrlEncodingTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UrlEncodingTest.java b/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UrlEncodingTest.java
index 5c06714..1ab8c79 100755
--- a/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UrlEncodingTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/urlencoding/Common_UrlEncodingTest.java
@@ -237,7 +237,7 @@ public class Common_UrlEncodingTest {
}
public static class G {
- @BeanProperty(beanUri=true) public URI uri;
+ public URI uri;
public URI f1;
public URL f2;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/xml/CommonTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/xml/CommonTest.java b/juneau-core/src/test/java/org/apache/juneau/xml/CommonTest.java
index a618859..bd42fe1 100755
--- a/juneau-core/src/test/java/org/apache/juneau/xml/CommonTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/xml/CommonTest.java
@@ -24,6 +24,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
+import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.serializer.*;
import org.apache.juneau.testbeans.*;
import org.apache.juneau.xml.annotation.*;
@@ -240,7 +241,7 @@ public class CommonTest {
}
public static class G {
- @BeanProperty(beanUri=true) public URI uri;
+ @Rdf(beanUri=true) public URI uri;
public URI f1;
public URL f2;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/xml/CommonXmlTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/xml/CommonXmlTest.java b/juneau-core/src/test/java/org/apache/juneau/xml/CommonXmlTest.java
index b009eee..d76cc26 100755
--- a/juneau-core/src/test/java/org/apache/juneau/xml/CommonXmlTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/xml/CommonXmlTest.java
@@ -19,7 +19,6 @@ import static org.junit.Assert.*;
import java.net.*;
-import org.apache.juneau.annotation.*;
import org.apache.juneau.xml.annotation.*;
import org.junit.*;
@@ -47,7 +46,7 @@ public class CommonXmlTest {
}
public static class A {
- @BeanProperty(beanUri=true) public URL url;
+ @Xml(format=XmlFormat.ATTR) public URL url;
@Xml(format=ATTR) public int id;
public String name;
public A() {}
@@ -71,7 +70,7 @@ public class CommonXmlTest {
}
public static class B {
- @BeanProperty(beanUri=true) public URL url;
+ @Xml(format=XmlFormat.ATTR) public URL url;
public URL url2;
public B() {}
public B(String url) throws Exception {
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-core/src/test/java/org/apache/juneau/xml/XmlTest.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/test/java/org/apache/juneau/xml/XmlTest.java b/juneau-core/src/test/java/org/apache/juneau/xml/XmlTest.java
index d2837b9..9580c50 100755
--- a/juneau-core/src/test/java/org/apache/juneau/xml/XmlTest.java
+++ b/juneau-core/src/test/java/org/apache/juneau/xml/XmlTest.java
@@ -23,6 +23,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
+import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.json.*;
import org.apache.juneau.xml.annotation.*;
import org.apache.juneau.xml.xml1a.*;
@@ -441,7 +442,7 @@ public class XmlTest {
}
public static class N {
- @BeanProperty(beanUri=true) @Xml(format=ELEMENT) public URL url;
+ @Rdf(beanUri=true) @Xml(format=ELEMENT) public URL url;
public int id;
public String name;
public N() {}
@@ -473,7 +474,7 @@ public class XmlTest {
}
public static class O {
- @BeanProperty(beanUri=true, name="url2") @Xml(format=ELEMENT) public URL url;
+ @BeanProperty(name="url2") @Xml(format=ELEMENT) public URL url;
@BeanProperty(name="id2") public int id;
public String name;
public O() {}
@@ -505,7 +506,7 @@ public class XmlTest {
}
public static class P {
- @BeanProperty(beanUri=true, name="url2") public URL url;
+ @BeanProperty(name="url2") @Xml(format=ATTR) public URL url;
@BeanProperty(name="id2") @Xml(format=ATTR) public int id;
public String name;
public P() {}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Address.java
----------------------------------------------------------------------
diff --git a/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Address.java b/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Address.java
index ed05dc0..a261eb6 100755
--- a/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Address.java
+++ b/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Address.java
@@ -14,7 +14,6 @@ package org.apache.juneau.samples.addressbook;
import java.net.URI;
-import org.apache.juneau.annotation.*;
import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.xml.annotation.*;
@@ -28,7 +27,7 @@ public class Address {
private static int nextAddressId = 1;
// Bean properties
- @BeanProperty(beanUri=true) public URI uri;
+ @Rdf(beanUri=true) public URI uri;
public URI personUri;
public int id;
@Xml(prefix="mail") @Rdf(prefix="mail") public String street, city, state;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/4b2719c0/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Person.java
----------------------------------------------------------------------
diff --git a/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Person.java b/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Person.java
index f27b943..c25be40 100755
--- a/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Person.java
+++ b/juneau-samples/src/main/java/org/apache/juneau/samples/addressbook/Person.java
@@ -30,7 +30,7 @@ public class Person {
private static int nextPersonId = 1;
// Bean properties
- @BeanProperty(beanUri=true) public URI uri;
+ @Rdf(beanUri=true) public URI uri;
public URI addressBookUri;
public int id;
public String name;