org.eaglei.datatools.jena
Class RESTRepositoryProvider

java.lang.Object
  extended by org.eaglei.datatools.jena.RESTRepositoryProvider
All Implemented Interfaces:
CrudProvider, DatatoolsMetadataProvider, DatatoolsSecurityProvider, InstanceProvider, QueryProvider, RepositoryProvider, WorkFlowProvider

public final class RESTRepositoryProvider
extends java.lang.Object
implements RepositoryProvider

Author:
Ricardo De Lima, Lucy Hadden, Daniela Bourges April 11, 2010 Center for Biomedical Informatics (CBMI)

Field Summary
static java.lang.String LABEL_QUERY_FAILED
           
protected static java.lang.String READ_VIEW
           
 
Fields inherited from interface org.eaglei.datatools.provider.CrudProvider
DEFAULT_WORKSPACE_ENTITY
 
Constructor Summary
RESTRepositoryProvider(DatatoolsConfiguration config, org.eaglei.model.jena.JenaEIInstanceFactory instanceFactory)
           
 
Method Summary
 boolean addLabToUser(org.eaglei.security.Session session, org.eaglei.model.EIURI labUri)
          Deprecated. 
 java.util.List<org.eaglei.model.EIURI> claim(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIURI> uris)
           
 void createInstance(org.eaglei.security.Session session, org.eaglei.model.EIInstance instance, org.eaglei.model.EIEntity workspaceEntity)
           
 void createInstance(org.eaglei.security.Session session, java.lang.String rdfString, java.lang.String instanceUri, org.eaglei.model.EIEntity workspaceEntity)
           
 void createInstances(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIInstance> instances, org.eaglei.model.EIEntity workspaceEntity)
           
 org.eaglei.model.EIInstance deepCopy(org.eaglei.security.Session session, org.eaglei.model.EIURI originalUri)
           
 void deleteInstance(org.eaglei.security.Session session, org.eaglei.model.EIURI instanceUri)
           
 void deleteInstances(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIURI> instanceUris)
           
 org.eaglei.model.EIInstance duplicateInstance(org.eaglei.security.Session session, org.eaglei.model.EIInstance original)
           
 java.util.List<org.eaglei.model.EIInstanceMinimal> EIQuery(org.eaglei.security.Session session, java.lang.String sparql)
           
 org.eaglei.model.EIInstance getEmptyEIInstance(org.eaglei.security.Session session, org.eaglei.model.EIURI classUri)
           
 org.eaglei.model.EIInstance getEmptyEIInstance(org.eaglei.security.Session session, org.eaglei.model.EIURI classUri, org.eaglei.model.EIEntity instanceEntity)
           
 org.eaglei.model.EIInstance getInstance(org.eaglei.security.Session session, org.eaglei.model.EIURI instanceUri)
           
 java.util.Map<org.eaglei.model.EIURI,java.lang.String> getModifiedDates(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIURI> uris)
           
 java.util.List<org.eaglei.model.EIURI> getNewInstanceID(org.eaglei.security.Session session, int count)
           
 java.lang.String getToken(org.eaglei.security.Session session, org.eaglei.model.EIInstance instance)
           
 java.util.Map<org.eaglei.model.EIInstance,java.lang.String> getTokens(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIInstance> instances)
           
 java.util.List<Workspace> getWorkspaces(org.eaglei.security.Session session)
           
 boolean isOnline()
           
 java.util.List<org.eaglei.model.EIInstanceMinimal> listReferencingResources(org.eaglei.security.Session session, org.eaglei.model.EIURI resourceUri, org.eaglei.search.provider.AuthSearchRequest queryRequest, SortByProperties orderBy, boolean strictOwnerFilter)
           
 java.util.List<org.eaglei.model.EIInstanceMinimal> listResources(org.eaglei.security.Session session, org.eaglei.search.provider.AuthSearchRequest queryRequest, SortByProperties orderBy, boolean strictOwnerFilter)
           
 java.util.List<org.eaglei.model.EIInstanceMinimal> listResources(org.eaglei.security.Session session, org.eaglei.search.provider.AuthSearchRequest queryRequest, SortByProperties orderBy, boolean strictOwnerFilter, boolean stubsOnly)
           
 java.util.List<org.eaglei.model.EIInstanceMinimal> listResourcesForObjectPropertyValue(org.eaglei.security.Session session, org.eaglei.model.EIURI classUri, org.eaglei.model.EIURI lab, org.eaglei.model.EIURI state, boolean onlyLab)
           
 java.util.List<WorkFlowTransition> listWorkFlowTransitions(org.eaglei.security.Session session, org.eaglei.model.EIEntity workspaceEntity)
          Returns the list of WorkFlowTransion objects
 User login(java.lang.String userName, java.lang.String password)
           
 void logout(org.eaglei.security.Session session)
           
 java.lang.String query(org.eaglei.security.Session session, java.lang.String sparql)
           
 java.util.List<org.eaglei.model.EIURI> release(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIURI> uris)
           
 java.lang.String retrieveLabel(org.eaglei.security.Session session, org.eaglei.model.EIURI uri)
           
protected  void setReadParameters(org.apache.commons.httpclient.methods.PostMethod method)
           
protected  void setWriteParameters(org.apache.commons.httpclient.methods.PostMethod method, java.lang.String id)
           
 java.util.List<org.eaglei.model.EIURI> transition(org.eaglei.security.Session session, java.util.List<org.eaglei.model.EIURI> uris, org.eaglei.model.EIEntity transitionEntity)
           
 void updateInstance(org.eaglei.security.Session session, org.eaglei.model.EIInstance instance, java.lang.String token)
           
 java.lang.String updateInstance(org.eaglei.security.Session session, java.lang.String rdfString, java.lang.String instanceUri, java.lang.String token)
           
 void updateInstances(org.eaglei.security.Session session, java.util.Map<org.eaglei.model.EIInstance,java.lang.String> instancesWithTokens)
           
 User whoami(org.eaglei.security.Session session)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

READ_VIEW

protected static final java.lang.String READ_VIEW
See Also:
Constant Field Values

LABEL_QUERY_FAILED

public static final java.lang.String LABEL_QUERY_FAILED
See Also:
Constant Field Values
Constructor Detail

RESTRepositoryProvider

public RESTRepositoryProvider(DatatoolsConfiguration config,
                              org.eaglei.model.jena.JenaEIInstanceFactory instanceFactory)
                       throws java.io.IOException
Throws:
java.io.IOException
Method Detail

setWriteParameters

protected void setWriteParameters(org.apache.commons.httpclient.methods.PostMethod method,
                                  java.lang.String id)

setReadParameters

protected void setReadParameters(org.apache.commons.httpclient.methods.PostMethod method)

createInstances

public void createInstances(org.eaglei.security.Session session,
                            java.util.List<org.eaglei.model.EIInstance> instances,
                            org.eaglei.model.EIEntity workspaceEntity)
                     throws java.lang.Exception
Specified by:
createInstances in interface CrudProvider
Throws:
java.lang.Exception

createInstance

public void createInstance(org.eaglei.security.Session session,
                           org.eaglei.model.EIInstance instance,
                           org.eaglei.model.EIEntity workspaceEntity)
                    throws java.lang.Exception
Specified by:
createInstance in interface CrudProvider
Throws:
java.lang.Exception

createInstance

public void createInstance(org.eaglei.security.Session session,
                           java.lang.String rdfString,
                           java.lang.String instanceUri,
                           org.eaglei.model.EIEntity workspaceEntity)
                    throws java.lang.Exception
Throws:
java.lang.Exception

deepCopy

public org.eaglei.model.EIInstance deepCopy(org.eaglei.security.Session session,
                                            org.eaglei.model.EIURI originalUri)
                                     throws java.lang.Exception
Specified by:
deepCopy in interface CrudProvider
Throws:
java.lang.Exception

duplicateInstance

public org.eaglei.model.EIInstance duplicateInstance(org.eaglei.security.Session session,
                                                     org.eaglei.model.EIInstance original)
                                              throws java.lang.Exception
Throws:
java.lang.Exception

deleteInstances

public void deleteInstances(org.eaglei.security.Session session,
                            java.util.List<org.eaglei.model.EIURI> instanceUris)
                     throws java.lang.Exception
Specified by:
deleteInstances in interface CrudProvider
Throws:
java.lang.Exception

deleteInstance

public void deleteInstance(org.eaglei.security.Session session,
                           org.eaglei.model.EIURI instanceUri)
                    throws java.lang.Exception
Specified by:
deleteInstance in interface CrudProvider
Throws:
java.lang.Exception

getToken

public java.lang.String getToken(org.eaglei.security.Session session,
                                 org.eaglei.model.EIInstance instance)
                          throws java.lang.Exception
Specified by:
getToken in interface CrudProvider
Throws:
java.lang.Exception

getTokens

public java.util.Map<org.eaglei.model.EIInstance,java.lang.String> getTokens(org.eaglei.security.Session session,
                                                                             java.util.List<org.eaglei.model.EIInstance> instances)
                                                                      throws java.lang.Exception
Specified by:
getTokens in interface CrudProvider
Throws:
java.lang.Exception

updateInstances

public void updateInstances(org.eaglei.security.Session session,
                            java.util.Map<org.eaglei.model.EIInstance,java.lang.String> instancesWithTokens)
                     throws java.lang.Exception
Specified by:
updateInstances in interface CrudProvider
Throws:
java.lang.Exception

updateInstance

public void updateInstance(org.eaglei.security.Session session,
                           org.eaglei.model.EIInstance instance,
                           java.lang.String token)
                    throws java.lang.Exception
Specified by:
updateInstance in interface CrudProvider
Throws:
java.lang.Exception

updateInstance

public java.lang.String updateInstance(org.eaglei.security.Session session,
                                       java.lang.String rdfString,
                                       java.lang.String instanceUri,
                                       java.lang.String token)
                                throws java.lang.Exception
Throws:
java.lang.Exception

getInstance

public org.eaglei.model.EIInstance getInstance(org.eaglei.security.Session session,
                                               org.eaglei.model.EIURI instanceUri)
                                        throws java.lang.Exception
Specified by:
getInstance in interface InstanceProvider
Throws:
java.lang.Exception

getNewInstanceID

public java.util.List<org.eaglei.model.EIURI> getNewInstanceID(org.eaglei.security.Session session,
                                                               int count)
                                                        throws java.lang.Exception
Specified by:
getNewInstanceID in interface CrudProvider
Throws:
java.lang.Exception

getWorkspaces

public java.util.List<Workspace> getWorkspaces(org.eaglei.security.Session session)
                                        throws java.lang.Exception
Specified by:
getWorkspaces in interface DatatoolsSecurityProvider
Throws:
java.lang.Exception

login

public User login(java.lang.String userName,
                  java.lang.String password)
           throws java.lang.Exception
Specified by:
login in interface DatatoolsSecurityProvider
Throws:
java.lang.Exception

logout

public void logout(org.eaglei.security.Session session)
            throws java.lang.Exception
Specified by:
logout in interface DatatoolsSecurityProvider
Throws:
java.lang.Exception

whoami

public User whoami(org.eaglei.security.Session session)
            throws java.lang.Exception
Specified by:
whoami in interface DatatoolsSecurityProvider
Throws:
java.lang.Exception

getEmptyEIInstance

public org.eaglei.model.EIInstance getEmptyEIInstance(org.eaglei.security.Session session,
                                                      org.eaglei.model.EIURI classUri,
                                                      org.eaglei.model.EIEntity instanceEntity)
                                               throws java.lang.Exception
Specified by:
getEmptyEIInstance in interface CrudProvider
Throws:
java.lang.Exception

getEmptyEIInstance

public org.eaglei.model.EIInstance getEmptyEIInstance(org.eaglei.security.Session session,
                                                      org.eaglei.model.EIURI classUri)
                                               throws java.lang.Exception
Specified by:
getEmptyEIInstance in interface CrudProvider
Throws:
java.lang.Exception

isOnline

public boolean isOnline()
Specified by:
isOnline in interface DatatoolsSecurityProvider

query

public java.lang.String query(org.eaglei.security.Session session,
                              java.lang.String sparql)
                       throws java.lang.Exception
Specified by:
query in interface QueryProvider
Throws:
java.lang.Exception

EIQuery

public java.util.List<org.eaglei.model.EIInstanceMinimal> EIQuery(org.eaglei.security.Session session,
                                                                  java.lang.String sparql)
                                                           throws java.lang.Exception
Specified by:
EIQuery in interface QueryProvider
Throws:
java.lang.Exception

listResourcesForObjectPropertyValue

public java.util.List<org.eaglei.model.EIInstanceMinimal> listResourcesForObjectPropertyValue(org.eaglei.security.Session session,
                                                                                              org.eaglei.model.EIURI classUri,
                                                                                              org.eaglei.model.EIURI lab,
                                                                                              org.eaglei.model.EIURI state,
                                                                                              boolean onlyLab)
                                                                                       throws java.lang.Exception
Specified by:
listResourcesForObjectPropertyValue in interface QueryProvider
Throws:
java.lang.Exception

addLabToUser

@Deprecated
public boolean addLabToUser(org.eaglei.security.Session session,
                                       org.eaglei.model.EIURI labUri)
                     throws java.lang.Exception
Deprecated. 

Specified by:
addLabToUser in interface DatatoolsMetadataProvider
Throws:
java.lang.Exception

retrieveLabel

public java.lang.String retrieveLabel(org.eaglei.security.Session session,
                                      org.eaglei.model.EIURI uri)
                               throws java.lang.Exception
Specified by:
retrieveLabel in interface QueryProvider
Throws:
java.lang.Exception

listResources

public java.util.List<org.eaglei.model.EIInstanceMinimal> listResources(org.eaglei.security.Session session,
                                                                        org.eaglei.search.provider.AuthSearchRequest queryRequest,
                                                                        SortByProperties orderBy,
                                                                        boolean strictOwnerFilter)
                                                                 throws java.lang.Exception
Specified by:
listResources in interface WorkFlowProvider
Throws:
java.lang.Exception

listResources

public java.util.List<org.eaglei.model.EIInstanceMinimal> listResources(org.eaglei.security.Session session,
                                                                        org.eaglei.search.provider.AuthSearchRequest queryRequest,
                                                                        SortByProperties orderBy,
                                                                        boolean strictOwnerFilter,
                                                                        boolean stubsOnly)
                                                                 throws java.lang.Exception
Specified by:
listResources in interface WorkFlowProvider
Throws:
java.lang.Exception

listReferencingResources

public java.util.List<org.eaglei.model.EIInstanceMinimal> listReferencingResources(org.eaglei.security.Session session,
                                                                                   org.eaglei.model.EIURI resourceUri,
                                                                                   org.eaglei.search.provider.AuthSearchRequest queryRequest,
                                                                                   SortByProperties orderBy,
                                                                                   boolean strictOwnerFilter)
                                                                            throws java.lang.Exception
Specified by:
listReferencingResources in interface WorkFlowProvider
Throws:
java.lang.Exception

listWorkFlowTransitions

public java.util.List<WorkFlowTransition> listWorkFlowTransitions(org.eaglei.security.Session session,
                                                                  org.eaglei.model.EIEntity workspaceEntity)
                                                           throws java.lang.Exception
Description copied from interface: WorkFlowProvider
Returns the list of WorkFlowTransion objects

Specified by:
listWorkFlowTransitions in interface WorkFlowProvider
workspaceEntity - restrict results to transitions applying to given workspace . if passed null defaults to list from all workspaces
Returns:
List
Throws:
EIDataToolsProviderException
java.lang.Exception
org.apache.commons.httpclient.HttpException
java.io.IOException
See Also:
It Uses the Repository API call /repository/workflow/transitions,please see Workflow design notes at Workflow Design Notes

getModifiedDates

public java.util.Map<org.eaglei.model.EIURI,java.lang.String> getModifiedDates(org.eaglei.security.Session session,
                                                                               java.util.List<org.eaglei.model.EIURI> uris)
                                                                        throws java.lang.Exception
Specified by:
getModifiedDates in interface CrudProvider
Throws:
java.lang.Exception

claim

public java.util.List<org.eaglei.model.EIURI> claim(org.eaglei.security.Session session,
                                                    java.util.List<org.eaglei.model.EIURI> uris)
                                             throws java.lang.Exception
Specified by:
claim in interface WorkFlowProvider
Throws:
java.lang.Exception

release

public java.util.List<org.eaglei.model.EIURI> release(org.eaglei.security.Session session,
                                                      java.util.List<org.eaglei.model.EIURI> uris)
                                               throws java.lang.Exception
Specified by:
release in interface WorkFlowProvider
Throws:
java.lang.Exception

transition

public java.util.List<org.eaglei.model.EIURI> transition(org.eaglei.security.Session session,
                                                         java.util.List<org.eaglei.model.EIURI> uris,
                                                         org.eaglei.model.EIEntity transitionEntity)
                                                  throws java.lang.Exception
Specified by:
transition in interface WorkFlowProvider
Throws:
java.lang.Exception


Copyright © 2009-2011 Eagle-I. All Rights Reserved.