info.sswap.http.rest
Class ProtocolFactory

java.lang.Object
  extended by info.sswap.http.rest.ProtocolFactory

public class ProtocolFactory
extends java.lang.Object

A class for creating SSWAP Protocol objects based on their JSON description.

Author:
Blazej Bulka

Field Summary
private  EntityFactory entityFactory
           
private static java.util.Set<java.lang.String> RESOURCE_STANDARD_PROPERTIES
           
 
Constructor Summary
private ProtocolFactory()
           
 
Method Summary
private  void assignValue(info.sswap.api.model.SSWAPIndividual entity, Property jsonProperty, Value jsonValue)
           
private  void assignValues(info.sswap.api.model.SSWAPIndividual entity, Entity jsonEntity)
           
private  void copyTypes(Entity jsonIndividual, info.sswap.api.model.SSWAPIndividual entity)
           
private  void createIndividuals(info.sswap.api.model.SSWAPDocument document, ProtocolMessage message)
           
 info.sswap.api.model.RDG createRDG(ProtocolMessage message)
          Creates an RDG
 info.sswap.api.model.RIG createRIG(info.sswap.api.model.RDG rdg, ProtocolMessage message)
          Creates the RIG.
private  Entity createTypedEntity(java.lang.String type)
           
static ProtocolFactory get()
           
private  boolean isUsedAsObject(java.lang.String identifier, java.util.Collection<Mapping> mappings)
           
private  boolean isUsedAsSubject(java.lang.String identifier, java.util.Collection<Mapping> mappings)
           
private  info.sswap.api.model.SSWAPGraph makeMapping(info.sswap.api.model.SSWAPProtocol protocol, java.util.Map<java.lang.String,Entity> individuals, Mapping mapping)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

entityFactory

private EntityFactory entityFactory

RESOURCE_STANDARD_PROPERTIES

private static java.util.Set<java.lang.String> RESOURCE_STANDARD_PROPERTIES
Constructor Detail

ProtocolFactory

private ProtocolFactory()
Method Detail

get

public static ProtocolFactory get()

createRDG

public info.sswap.api.model.RDG createRDG(ProtocolMessage message)
                                   throws java.lang.IllegalArgumentException
Creates an RDG

Parameters:
message - input JSON content to convert
Throws:
java.lang.IllegalArgumentException - on parsing and other failures

createIndividuals

private void createIndividuals(info.sswap.api.model.SSWAPDocument document,
                               ProtocolMessage message)
                        throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

isUsedAsSubject

private boolean isUsedAsSubject(java.lang.String identifier,
                                java.util.Collection<Mapping> mappings)

isUsedAsObject

private boolean isUsedAsObject(java.lang.String identifier,
                               java.util.Collection<Mapping> mappings)

makeMapping

private info.sswap.api.model.SSWAPGraph makeMapping(info.sswap.api.model.SSWAPProtocol protocol,
                                                    java.util.Map<java.lang.String,Entity> individuals,
                                                    Mapping mapping)

copyTypes

private void copyTypes(Entity jsonIndividual,
                       info.sswap.api.model.SSWAPIndividual entity)

createRIG

public info.sswap.api.model.RIG createRIG(info.sswap.api.model.RDG rdg,
                                          ProtocolMessage message)
                                   throws java.lang.IllegalArgumentException
Creates the RIG.

Parameters:
rdg - RDG for the RIG
message - input JSON content to convert
Throws:
java.lang.IllegalArgumentException - on parsing and other failures

assignValues

private void assignValues(info.sswap.api.model.SSWAPIndividual entity,
                          Entity jsonEntity)
                   throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

assignValue

private void assignValue(info.sswap.api.model.SSWAPIndividual entity,
                         Property jsonProperty,
                         Value jsonValue)

createTypedEntity

private Entity createTypedEntity(java.lang.String type)
                          throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException


Copyright (c) 2010, iPlant Collaborative, University of Arizona, Cold Spring Harbor Laboratories, University of Texas at Austin.