com.wewebu.ow.server.ecmimpl.opencmis.object
Interface OwCMISTransientObject<N extends org.apache.chemistry.opencmis.client.api.TransientCmisObject>

All Known Subinterfaces:
OwCMISAlfrescoTransientObject<N>
All Known Implementing Classes:
OwCMISAbstractTransientObject, OwCMISAlfrescoBatchTransientObject, OwCMISAlfrescoBulkTransientObject, OwCMISBatchTransientObject, OwCMISBulkTransientObject

public interface OwCMISTransientObject<N extends org.apache.chemistry.opencmis.client.api.TransientCmisObject>

Abstraction of inner OwCMISNativeObject transient states. Implementors relay on OperationContexts and TransientCmisObjects to provide a centralized cache for CMIS property values. Transient objects are used to provide a so-called secured TransientCmisObject : the TransientCmisObject MWD object state with certain properties cached. Using secured TransientCmisObject guarantees that their method calls will not fail because of missing properties if the secured object was obtained through securing OwCMISTransientObject methods.

Alfresco Workdesk
Copyright (c) Alfresco Software, Inc.
All rights reserved.

For licensing information read the license.txt file or
go to: http://wiki.alfresco.com


Method Summary
 void detach()
          Detaches this transient object form the ECM CMIS repository.
 N getTransientCmisObject()
           
 org.apache.chemistry.opencmis.client.api.OperationContext getTransientContext()
           
 boolean isDetached()
           
 void refresh(Collection<String> propertyNames)
          Refreshes the requested cached CMIS properties.
 N secureObject(Collection<String> propertyNames)
           
 N secureObject(String... propertyNames)
           
 Map<String,org.apache.chemistry.opencmis.client.api.Property<?>> secureProperties(Collection<String> propertyNames)
           
 org.apache.chemistry.opencmis.client.api.Property<?> secureProperty(String propertyName)
           
 void setProperties(Map<String,Object> propertyValues)
          Persists to the CMIS-ECM and sets the mapped property values to the underlying TransientCmisObject.
 

Method Detail

getTransientContext

org.apache.chemistry.opencmis.client.api.OperationContext getTransientContext()
Returns:
the transient state creation context

getTransientCmisObject

N getTransientCmisObject()
Returns:
the TransientCmisObject state data

secureObject

N secureObject(String... propertyNames)
                                                                                    throws com.wewebu.ow.server.exceptions.OwException
Parameters:
propertyNames - CMIS property IDs that need to be secured
Returns:
the TransientCmisObject state data with the given properties secured
Throws:
com.wewebu.ow.server.exceptions.OwException

secureObject

N secureObject(Collection<String> propertyNames)
                                                                                    throws com.wewebu.ow.server.exceptions.OwException
Parameters:
propertyNames - CMIS property IDs that need to be secured
Returns:
the TransientCmisObject state data with the given properties secured
Throws:
com.wewebu.ow.server.exceptions.OwException

secureProperties

Map<String,org.apache.chemistry.opencmis.client.api.Property<?>> secureProperties(Collection<String> propertyNames)
                                                                                  throws com.wewebu.ow.server.exceptions.OwException
Parameters:
propertyNames - CMIS property IDs that need to be secured
Returns:
a Map of the requested IDs mapped to property values. The underlying TransientCmisObject will also have the requested properties secured.
Throws:
com.wewebu.ow.server.exceptions.OwException

secureProperty

org.apache.chemistry.opencmis.client.api.Property<?> secureProperty(String propertyName)
                                                                    throws com.wewebu.ow.server.exceptions.OwException
Parameters:
propertyName - CMIS property ID that needs to be secured
Returns:
the property value of the requested ID
Throws:
com.wewebu.ow.server.exceptions.OwException

setProperties

void setProperties(Map<String,Object> propertyValues)
Persists to the CMIS-ECM and sets the mapped property values to the underlying TransientCmisObject.

Parameters:
propertyValues -

refresh

void refresh(Collection<String> propertyNames)
Refreshes the requested cached CMIS properties.

Parameters:
propertyNames -

detach

void detach()
Detaches this transient object form the ECM CMIS repository. No CMIS server round-trip call will be performed on its caching or setting method calls.


isDetached

boolean isDetached()


Copyright © 2013 Alfresco Business Solutions. All Rights Reserved.