org.universAAL.ontology.che
Class ContextEvent

Package class diagram package ContextEvent
java.lang.Object
  extended by org.universAAL.middleware.rdf.Resource
      extended by org.universAAL.middleware.rdf.FinalizedResource
          extended by org.universAAL.middleware.owl.ManagedIndividual
              extended by org.universAAL.ontology.che.ContextEvent

public class ContextEvent
extends ManagedIndividual

Helper class that replicates ContextEvent as a ManagedIndividual with the possibility of not defining some of its properties.

This is the class that must be used by service callers that wish to call CHe services, instead of the middleware one ( ContextEvent), in the ServiceRequests they build (as input or outputs). Then, the output events received in a service response will have to be casted to ContextEvent, thus performing the conversion from org.universAAL.platform.casf.che.ontology.ContextEvent to ContextEvent in the casting.

Author:
Alvaro Fides Valero, Saied Tazari

Field Summary
static String CONTEXT_EVENT_URI_PREFIX
           
static String LOCAL_NAME_CONFIDENCE
           
static String LOCAL_NAME_EXPIRATION_TIME
           
static String LOCAL_NAME_OBJECT
           
static String LOCAL_NAME_PREDICATE
           
static String LOCAL_NAME_PROVIDER
           
static String LOCAL_NAME_SUBJECT
           
static String LOCAL_NAME_TIMESTAMP
           
static String MY_URI
           
static String PROP_CONTEXT_CONFIDENCE
           
static String PROP_CONTEXT_EXPIRATION_TIME
           
static String PROP_CONTEXT_PROVIDER
           
static String PROP_CONTEXT_TIMESTAMP
           
static String PROP_RDF_OBJECT
           
static String PROP_RDF_PREDICATE
           
static String PROP_RDF_SUBJECT
           
static String uAAL_CONTEXT_NAMESPACE
           
 
Fields inherited from class org.universAAL.middleware.owl.ManagedIndividual
OWL_NAMESPACE, TYPE_OWL_INDIVIDUAL, TYPE_OWL_THING
 
Fields inherited from class org.universAAL.middleware.rdf.Resource
ANON_URI_PREFIX, blockAddingTypes, isXMLLiteral, ns_delim_index, PROP_RDF_FIRST, PROP_RDF_REST, PROP_RDF_TYPE, PROP_RDFS_COMMENT, PROP_RDFS_LABEL, PROP_SERIALIZATION_FULL, PROP_SERIALIZATION_OPTIONAL, PROP_SERIALIZATION_REDUCED, PROP_SERIALIZATION_UNDEFINED, PROP_uAAL_INVOLVED_HUMAN_USER, props, RDF_EMPTY_LIST, RDF_NAMESPACE, RDFS_NAMESPACE, TYPE_RDF_LIST, TYPE_RDFS_CLASS, uAAL_NAMESPACE_PREFIX, uAAL_SERVICE_NAMESPACE, uAAL_VOCABULARY_NAMESPACE, uri
 
Constructor Summary
ContextEvent()
          Empty constructor, needed because this is a ManagedIndividual.
ContextEvent(Resource subject, String predicate)
          Construct a CHe stub ContextEvent inferring the object from the predicate which URI is present in the properties of the subject.
ContextEvent(String uri)
          This constructor is NOT for the exclusive usage by deserializers.
 
Method Summary
static ContextEvent constructSimpleEvent(String subjectURI, String subjectTypeURI, String predicate, Object object)
          Constructs a CHe stub ContextEvent according to the parameters passed.
 String getClassURI()
          Get the class URI for this ManagedIndividual.
 Integer getConfidence()
          Get the confidence of the event.
 Long getExpirationTime()
          Get the expiration time.
 int getPropSerializationType(String propURI)
          Answers if the given property has to be considered when serializing this individual in a minimized way, and if not ignore-able, whether its value should be presented in its full form or can be reduced.
 ContextProvider getProvider()
          Get the ContextProvider of the event.
 Object getRDFObject()
          Get the object of the event.
 String getRDFPredicate()
          Get the predicate of the event.
 Resource getRDFSubject()
          Get the subject of the event.
 String getSubjectTypeURI()
          Get the type of the subject of the event.
 String getSubjectURI()
          Get the URI of the subject of the event.
 Long getTimestamp()
          Get the timestamp of the event.
 boolean isWellFormed()
          Returns true, if the state of the resource is valid, otherwise false.
 boolean setConfidence(Integer confidence)
          Set the confidence.
 boolean setExpirationTime(Long expirationTime)
          Set the expiration time.
 boolean setProperty(String propURI, Object value)
          Overrides the ManagedIndividual implementation in order to avoid its checks and allow null values for wildcarding.
 boolean setProvider(ContextProvider src)
          Set the Context Provider.
 boolean setRDFObject(Object o)
          Set the object.
 boolean setRDFPredicate(String propURI)
          Set the predicate.
 boolean setRDFSubject(Resource subj)
          Set the subject.
 boolean setTimestamp(Long timestamp)
          Set the timestamp.
 
Methods inherited from class org.universAAL.middleware.owl.ManagedIndividual
checkCompatibility, checkMembership, copy, deepCopy, getClassRestrictionsOnProperty, getInstance, getNonAbstractSuperClasses, getNonabstractSuperClasses, getOntClassInfo, getTypeURI, isRegisteredClassURI, setPropertyPathFromOffset, toManagedIndividual
 
Methods inherited from class org.universAAL.middleware.rdf.FinalizedResource
addType, getLocalName, getNamespace, getProperty, getPropertyURIs, getType, getTypes, getURI, hasQualifiedName, isAnon, numberOfProperties
 
Methods inherited from class org.universAAL.middleware.rdf.Resource
addMultiLangProp, asList, asList, asRDFList, changeProperty, equals, generateAnonURI, getDefaultLang, getFilename, getMultiLangProp, getOrConstructLabel, getResource, getResourceComment, getResourceLabel, getStaticFieldValue, hashCode, hasProperty, isAnon, isBlockingAddingTypes, isClosedCollection, isQualifiedName, literal, representsQualifiedURI, serializesAsXMLLiteral, setPropertyPath, setPropertyPath, setResourceComment, setResourceLabel, toString, toStringRecursive, toStringRecursive, unliteral
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

uAAL_CONTEXT_NAMESPACE

public static final String uAAL_CONTEXT_NAMESPACE
See Also:
Constant Field Values

MY_URI

public static final String MY_URI
See Also:
Constant Field Values

CONTEXT_EVENT_URI_PREFIX

public static final String CONTEXT_EVENT_URI_PREFIX
See Also:
Constant Field Values

LOCAL_NAME_SUBJECT

public static final String LOCAL_NAME_SUBJECT
See Also:
Constant Field Values

PROP_RDF_SUBJECT

public static final String PROP_RDF_SUBJECT
See Also:
Constant Field Values

LOCAL_NAME_PREDICATE

public static final String LOCAL_NAME_PREDICATE
See Also:
Constant Field Values

PROP_RDF_PREDICATE

public static final String PROP_RDF_PREDICATE
See Also:
Constant Field Values

LOCAL_NAME_OBJECT

public static final String LOCAL_NAME_OBJECT
See Also:
Constant Field Values

PROP_RDF_OBJECT

public static final String PROP_RDF_OBJECT
See Also:
Constant Field Values

LOCAL_NAME_CONFIDENCE

public static final String LOCAL_NAME_CONFIDENCE
See Also:
Constant Field Values

PROP_CONTEXT_CONFIDENCE

public static final String PROP_CONTEXT_CONFIDENCE
See Also:
Constant Field Values

LOCAL_NAME_PROVIDER

public static final String LOCAL_NAME_PROVIDER
See Also:
Constant Field Values

PROP_CONTEXT_PROVIDER

public static final String PROP_CONTEXT_PROVIDER
See Also:
Constant Field Values

LOCAL_NAME_EXPIRATION_TIME

public static final String LOCAL_NAME_EXPIRATION_TIME
See Also:
Constant Field Values

PROP_CONTEXT_EXPIRATION_TIME

public static final String PROP_CONTEXT_EXPIRATION_TIME
See Also:
Constant Field Values

LOCAL_NAME_TIMESTAMP

public static final String LOCAL_NAME_TIMESTAMP
See Also:
Constant Field Values

PROP_CONTEXT_TIMESTAMP

public static final String PROP_CONTEXT_TIMESTAMP
See Also:
Constant Field Values
Constructor Detail

ContextEvent

public ContextEvent()
Empty constructor, needed because this is a ManagedIndividual. It generates an empty anonymous event, although this might give unexpected results.


ContextEvent

public ContextEvent(String uri)
This constructor is NOT for the exclusive usage by deserializers. You can construct one of these ContextEvents without properties, only with a URI. Or without it. Because this is a ManagedIndividual. Does not check URI well-formedness.

Parameters:
uri - URI of the event. Set it to null for an anonymous event, although this might give unexpected results.

ContextEvent

public ContextEvent(Resource subject,
                    String predicate)
Construct a CHe stub ContextEvent inferring the object from the predicate which URI is present in the properties of the subject. Subject, predicate and object must not be null. If you intend otherwise, use another constructor. This is the only constructor that will set a well-formed URI to the event. If you need such an URI, but without subject, predicate or object, you can use this constructor with stub parameters and then set them to null with the right "set" methods.

Parameters:
subject - The Resource representing the subject of the event. Must include the property specified in the second parameter, and must have a certain value
predicate - The property of the subject that will be used as object in the event
Method Detail

constructSimpleEvent

public static ContextEvent constructSimpleEvent(String subjectURI,
                                                String subjectTypeURI,
                                                String predicate,
                                                Object object)
Constructs a CHe stub ContextEvent according to the parameters passed.

Parameters:
subjectURI - URI of the subject.
subjectTypeURI - URI of the subject type.
predicate - URI of the predicate.
object - The object of the event.
Returns:

getConfidence

public Integer getConfidence()
Get the confidence of the event.

Returns:
The confidence represented as a percentage (0 to 100)

getExpirationTime

public Long getExpirationTime()
Get the expiration time.

Returns:
The amount of milliseconds after reception from which the information in the event is no longer valid

getPropSerializationType

public int getPropSerializationType(String propURI)
Description copied from class: ManagedIndividual
Answers if the given property has to be considered when serializing this individual in a minimized way, and if not ignore-able, whether its value should be presented in its full form or can be reduced. The return value must be one of Resource.PROP_SERIALIZATION_OPTIONAL, Resource.PROP_SERIALIZATION_REDUCED, or Resource.PROP_SERIALIZATION_FULL. It can be assumed that the given property is one of those returned by FinalizedResource.getPropertyURIs(). Decision criterion should be if the value of this property is absolutely necessary when this resource is being sent to a remote node. If the subclass rates it as unlikely that the receiver side would need this info, the answer should be PROP_SERIALIZATION_OPTIONAL in favor of lower communication traffic and higher performance even at risk of a possible additional query on the receiver side for fetching this info. With the same rationale, if a property should be included in the process of serialization, it is preferable to include it in a reduced form; in this case the return value should be PROP_SERIALIZATION_REDUCED, otherwise PROP_SERIALIZATION_FULL can be returned.

Specified by:
getPropSerializationType in class ManagedIndividual

getRDFObject

public Object getRDFObject()
Get the object of the event.

Returns:
The object of the event (a Resource)

getRDFPredicate

public String getRDFPredicate()
Get the predicate of the event.

Returns:
The URI of the predicate of the event

getProvider

public ContextProvider getProvider()
Get the ContextProvider of the event.

Returns:
The ContextProvider representing the provider that originated the event

getRDFSubject

public Resource getRDFSubject()
Get the subject of the event.

Returns:
The Resource that is the subject to the event

getSubjectTypeURI

public String getSubjectTypeURI()
Get the type of the subject of the event.

Returns:
The URI of the type of the subject to the event

getSubjectURI

public String getSubjectURI()
Get the URI of the subject of the event.

Returns:
The URI of the individual that is the subject to the event

getTimestamp

public Long getTimestamp()
Get the timestamp of the event.

Returns:
The timestamp, in UNIX format, associated to the event

isWellFormed

public boolean isWellFormed()
Description copied from class: Resource
Returns true, if the state of the resource is valid, otherwise false.

Subclasses should overwrite this methods as the default implementation returns always true.

Overrides:
isWellFormed in class ManagedIndividual
See Also:
Resource.isWellFormed()

setConfidence

public boolean setConfidence(Integer confidence)
Set the confidence.

Parameters:
confidence - The confidence in percentage (0 to 100)

setExpirationTime

public boolean setExpirationTime(Long expirationTime)
Set the expiration time.

Parameters:
expirationTime - The amount of millisecond after which the event is not valid afer reception

setRDFObject

public boolean setRDFObject(Object o)
Set the object.

Parameters:
o -

setRDFPredicate

public boolean setRDFPredicate(String propURI)
Set the predicate.

Parameters:
propURI - The URI of the predicate

setProvider

public boolean setProvider(ContextProvider src)
Set the Context Provider.

Parameters:
src -

setRDFSubject

public boolean setRDFSubject(Resource subj)
Set the subject.

Parameters:
subj -

setTimestamp

public boolean setTimestamp(Long timestamp)
Set the timestamp.

Parameters:
timestamp - The timestamp in UNIX format

setProperty

public boolean setProperty(String propURI,
                           Object value)
Overrides the ManagedIndividual implementation in order to avoid its checks and allow null values for wildcarding.

Overrides:
setProperty in class ManagedIndividual
Returns:
true if the property changed as a result of the call
See Also:
ManagedIndividual.setProperty(java.lang.String, java.lang.Object)

getClassURI

public String getClassURI()
Description copied from class: ManagedIndividual
Get the class URI for this ManagedIndividual. All non-abstract subclasses MUST overwrite this method!

Overrides:
getClassURI in class ManagedIndividual
Returns:
The class URI.


Copyright © 2014 universAAL Consortium. All Rights Reserved.