You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ka...@apache.org on 2013/08/06 09:29:54 UTC
svn commit: r1510872 - in /directory/escimo/trunk:
common/src/main/java/org/apache/directory/scim/json/ResourceSerializer.java
ldap/src/main/java/org/apache/directory/scim/ldap/schema/BaseType.java
Author: kayyagari
Date: Tue Aug 6 07:29:54 2013
New Revision: 1510872
URL: http://svn.apache.org/r1510872
Log:
o moved the core URI constant
o included schemas attribute in the resource
Modified:
directory/escimo/trunk/common/src/main/java/org/apache/directory/scim/json/ResourceSerializer.java
directory/escimo/trunk/ldap/src/main/java/org/apache/directory/scim/ldap/schema/BaseType.java
Modified: directory/escimo/trunk/common/src/main/java/org/apache/directory/scim/json/ResourceSerializer.java
URL: http://svn.apache.org/viewvc/directory/escimo/trunk/common/src/main/java/org/apache/directory/scim/json/ResourceSerializer.java?rev=1510872&r1=1510871&r2=1510872&view=diff
==============================================================================
--- directory/escimo/trunk/common/src/main/java/org/apache/directory/scim/json/ResourceSerializer.java (original)
+++ directory/escimo/trunk/common/src/main/java/org/apache/directory/scim/json/ResourceSerializer.java Tue Aug 6 07:29:54 2013
@@ -20,7 +20,6 @@
package org.apache.directory.scim.json;
-import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -31,9 +30,12 @@ import org.apache.directory.scim.SimpleA
import org.apache.directory.scim.SimpleAttributeGroup;
import org.apache.directory.scim.User;
+import sun.reflect.generics.tree.BaseType;
+
import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
+import com.google.gson.JsonPrimitive;
/**
@@ -45,17 +47,33 @@ public class ResourceSerializer
{
private Gson gson = new Gson();
+ public static final String CORE_URI = "urn:scim:schemas:core:1.0";
+
public static String serialize( User user )
{
- JsonObject json = new JsonObject();
+ JsonObject root = new JsonObject();
Map<String, List<AbstractAttribute>> attributes = user.getAttributes();
+
+ JsonArray schemas = new JsonArray();
+ root.add( "schemas", schemas );
+
for ( String uri : attributes.keySet() )
{
- serialize( json, attributes.get( uri ) );
+ schemas.add( new JsonPrimitive( uri ) );
+
+ JsonObject parent = root;
+
+ if( !uri.equals( CORE_URI ) )
+ {
+ parent = new JsonObject();
+ root.add( uri, parent );
+ }
+
+ serialize( parent, attributes.get( uri ) );
}
- return json.toString();
+ return root.toString();
}
Modified: directory/escimo/trunk/ldap/src/main/java/org/apache/directory/scim/ldap/schema/BaseType.java
URL: http://svn.apache.org/viewvc/directory/escimo/trunk/ldap/src/main/java/org/apache/directory/scim/ldap/schema/BaseType.java?rev=1510872&r1=1510871&r2=1510872&view=diff
==============================================================================
--- directory/escimo/trunk/ldap/src/main/java/org/apache/directory/scim/ldap/schema/BaseType.java (original)
+++ directory/escimo/trunk/ldap/src/main/java/org/apache/directory/scim/ldap/schema/BaseType.java Tue Aug 6 07:29:54 2013
@@ -19,6 +19,8 @@
*/
package org.apache.directory.scim.ldap.schema;
+import org.apache.directory.scim.json.ResourceSerializer;
+
/**
* TODO BaseType.
@@ -29,8 +31,6 @@ public abstract class BaseType
{
private String uri;
- public static final String CORE_URI = "urn:scim:schemas:core:1.0";
-
public BaseType( String uri )
{
this.uri = uri;
@@ -56,7 +56,7 @@ public abstract class BaseType
public boolean isCoreAttribute()
{
- return CORE_URI.equals( uri );
+ return ResourceSerializer.CORE_URI.equals( uri );
}
/**