org.cmis.interopserver.services.capv2
Interface CAPv2
- All Superinterfaces:
- java.rmi.Remote
- All Known Implementing Classes:
- CAPv2SoapBindingImpl, CAPv2SoapBindingSkeleton
public interface CAPv2
- extends java.rmi.Remote
Method Summary |
org.cmis.interopserver.beans.capv2.Alert |
getCAPAlert(java.lang.String messageid)
Gets the Alert that corresponds to this identifier. |
org.cmis.interopserver.beans.capv2.Alert[] |
getCAPAlerts(java.util.Calendar lastupdate)
Gets all Alerts since the given date-time, exclusive. |
org.cmis.interopserver.beans.capv2.Alert[] |
getCAPAlerts(java.lang.String[] searchTerms)
Gets all Alerts that are visible to the user that match ALL of the given search terms. |
org.cmis.interopserver.beans.SimpleCOG[] |
getCogs()
|
org.cmis.interopserver.beans.SimpleCOG |
getMyCog()
|
java.util.Calendar |
getServerTime()
Retrieves the current time on the server; useful for time-synching to ensure that
getCAPAlerts(time) is accurate. |
java.lang.String |
ping()
|
void |
postCAPAlert(org.cmis.interopserver.beans.capv2.Alert alert)
Posts this Alert globally across the system. |
void |
postCAPAlert(org.cmis.interopserver.beans.capv2.Alert Alert,
org.cmis.interopserver.beans.capv2.CAPAttachmentDescriptor[] attachments)
This method is identitical to postCAPAlert(Alert), but also includes attachments. |
void |
postCAPAlert(org.cmis.interopserver.beans.capv2.Alert alert,
org.cmis.interopserver.beans.SimpleCOG[] mailList)
Posts this Alert to the specified list of COGs. |
void |
postCAPAlert(org.cmis.interopserver.beans.capv2.Alert in0,
org.cmis.interopserver.beans.SimpleCOG[] in1,
org.cmis.interopserver.beans.capv2.CAPAttachmentDescriptor[] in2)
This is identitical to postCAPAlert(alert, mailList), above, but also includes attachments. |
getCAPAlert
org.cmis.interopserver.beans.capv2.Alert getCAPAlert(java.lang.String messageid)
throws java.rmi.RemoteException
- Gets the Alert that corresponds to this identifier. Since the CAP identifier is unique only
for a particular sender, to retrieve a particular CAP alert, concatenate the CAP
sender
, a colon, and the CAP
identifier
to use as the "messageid".
For example: user@123.org:#1234 Any leading or trailing white space will be removed.
If the "messageid" does not correspond to a CAP Alert in the DMIS system, an error will be returned.
- Parameters:
messageid
- (cap sender):(cap identifier)
- Returns:
- Alert that corresponds to this identifier.
- Throws:
java.rmi.RemoteException
- A remote exception occurred
getCAPAlerts
org.cmis.interopserver.beans.capv2.Alert[] getCAPAlerts(java.lang.String[] searchTerms)
throws java.rmi.RemoteException
- Gets all Alerts that are visible to the user that match ALL of the given search terms.
Search terms are sent in as an array of strings in the form:
method=search string
The currently available method is "xpath"; however geospatial searches are coming soon.
So, for example, to use an XPath query to search for all alerts with an "identifier"
field that is equal to "id5", then include the following string in the searchTerms array:
xpath=/alert[identifier="id5"]
Details on XPath:
For more information on XPath, see http://www.w3schools.com/xpath/
NOTE that the DMI-Services XPath support is not yet complete; all basic functions are supported
but some functions are not yet implemented. If you run into something that is not supported and
you would like it to be, please let us know and we will try to help.
- Parameters:
searchTerms
-
- Returns:
- All Alerts matching all of the search terms.
- Throws:
RemoteException
- if there is some error
getCAPAlerts
org.cmis.interopserver.beans.capv2.Alert[] getCAPAlerts(java.util.Calendar lastupdate)
throws java.rmi.RemoteException
- Gets all Alerts since the given date-time, exclusive. This includes Alerts that have been posted
directly to the caller's COG as well as those that have been posted globally. The Alerts
are returned in chronological order, from newest to oldest. If the date is in the future
or otherwise invalid, an error is returned. If there are no alerts since that date-time, an
empty list is returned.
- Parameters:
lastupdate
- a date-time cutoff for retrieving posted events. This value
is being compared to the sent field of the Alert message.
- Returns:
- An array of alerts since the given date-time.
- Throws:
java.rmi.RemoteException
- A remote exception occurred
getServerTime
java.util.Calendar getServerTime()
throws java.rmi.RemoteException
- Retrieves the current time on the server; useful for time-synching to ensure that
getCAPAlerts(time) is accurate. Note that current server time is also returned as a
SOAP header with each request; this method is here only for convenience.
- Returns:
- current server time.
- Throws:
RemoteException
postCAPAlert
void postCAPAlert(org.cmis.interopserver.beans.capv2.Alert Alert,
org.cmis.interopserver.beans.capv2.CAPAttachmentDescriptor[] attachments)
throws java.rmi.RemoteException
- This method is identitical to postCAPAlert(Alert), but also includes attachments.
These attachments are ways to include resources pertinent to the alert that will be hosted
on DMI-Services servers and accessible to all recipients of the alert (via a URL in a "resource" block).
These attachments are included in the message, following the SOAP with Attachments
specification (most toolkits have methods to deal with adding attachments; see your
toolkit documentation for details).
The CAPAttachmentDescriptor object contains information identifying the "info" block that the
attachment corresponds to; see the CAPAttachmentDescriptor for details on these fields. The object
also contains information describing the attachment, and optionally a SHA-1 digest that will be checked
by DMI-Services to ensure no transport errors.
The attachments will be handled in DMIS in the following manner:
DMIS will pull the attachments from the message and store them on the DMI-Services servers.
DMIS will assume that the first CAPAttachmentDescriptor object corresponds to the first attachment,
and so on; if there are an uneven number of attachments and CAPAttachmentDescriptors, it will throw
an error.
DMIS will check each attachment against the digest provided in the corresponding CAPAttachmentDescriptor (if any);
if there is a mismatch it will assume that an error occured in transmission and will throw an error.
For each attachment, DMIS will add a resource block to the info block described in the CAPAttachmentDescriptor
(existing resource blocks will not be affected). It will populate the resource block with
data from the CAPAttachmentDescriptor object. It will also fill in the message digest, if it was not specified
in the CAPAttachmentDescriptor, and it will fill in the size value. It will fill in the URL value with the URL
that a recipient of the alert can use to view/retrieve the resource (using HTTPS).
The alert, with the new resource block, will then be posted as usual.
- Parameters:
alert
- Alert to be posted.attachments
- Descriptions of the attachments that are added to this message via the
SOAP with Attachments specification. These must correspond, one-to-one, with attachments
in this message. The first attachment descriptor in the array describes the first attachment
in the message, and so on.
- Throws:
java.rmi.RemoteException
- A remote exception occurred- See Also:
postCAPAlert
postCAPAlert
void postCAPAlert(org.cmis.interopserver.beans.capv2.Alert alert,
org.cmis.interopserver.beans.SimpleCOG[] mailList)
throws java.rmi.RemoteException
- Posts this Alert to the specified list of COGs. Once posted, the Alert will be accessible to
users of any of the COGs on that list, as well as the sender's COG. This is semantically
identical to using
postCAPAlert(Alert)
with COG ids specified in the address
field as described above. This method will ignore the address and scope fields of the
Alert and post it only to the COGs specified in the array of SimpleCOG objects supplied.
If any of the COGs specified in the COG array are invalid, an error will be returned and no
posting will take place. The same is true if there are duplicates in the COG array, or if
the sender's COG is specified in the COG array. This method does not return anything; if
no error is returned then the posting has succeeded.
- Parameters:
alert
- Alert to be posted.mailList
- Array of SimpleCOGs to receive the alert.
- Throws:
java.rmi.RemoteException
- A remote exception occurred
postCAPAlert
void postCAPAlert(org.cmis.interopserver.beans.capv2.Alert alert)
throws java.rmi.RemoteException
- Posts this Alert globally across the system. Once posted, the Alert will be accessible by
users of all COGs (including the sender's) via the "getCAPAlert" methods, with the
following exception: If the value of the Alert's
Alert.scope
field is "Private" and the org.cmis.interopserver.beans.cap.Alert#address
field contains a space-delimited series COGs in
the form "COGx" where x is a valid COG SimpleCOG.id
(for example, COG1737 COG1000 COG2
) then the Alert will be posted to only
those specified COGs. If any of the COG ids are invalid, an error will be returned and no
posting will take place. In any other case, the Alert will be posted globally across the
DMIS system (to all COGs). This method does not return anything; if no error is returned
then the posting has succeeded.
- Parameters:
alert
- Alert to be posted.
- Throws:
java.rmi.RemoteException
- A remote exception occurred
postCAPAlert
void postCAPAlert(org.cmis.interopserver.beans.capv2.Alert in0,
org.cmis.interopserver.beans.SimpleCOG[] in1,
org.cmis.interopserver.beans.capv2.CAPAttachmentDescriptor[] in2)
throws java.rmi.RemoteException
- This is identitical to postCAPAlert(alert, mailList), above, but also includes attachments.
These attachments are ways to include resources pertinent to the alert that will be hosted
on DMI-Services servers and accessible to all recipients of the alert (via a URL in a "resource" block).
These attachments are included in the message, following the SOAP with Attachments
specification (most toolkits have methods to deal with adding attachments; see your
toolkit documentation for details).
The CAPAttachmentDescriptor object contains information identifying the "info" block that the
attachment corresponds to; see the CAPAttachmentDescriptor for details on these fields. The object
also contains information describing the attachment, and optionally a SHA-1 digest that will be checked
by DMI-Services to ensure no transport errors.
The attachments will be handled in DMIS in the following manner:
DMIS will pull the attachments from the message and store them on the DMI-Services servers.
DMIS will assume that the first CAPAttachmentDescriptor object corresponds to the first attachment,
and so on; if there are an uneven number of attachments and CAPAttachmentDescriptors, it will throw
an error.
DMIS will check each attachment against the digest provided in the corresponding CAPAttachmentDescriptor (if any);
if there is a mismatch it will assume that an error occured in transmission and will throw an error.
For each attachment, DMIS will add a resource block to the info block described in the CAPAttachmentDescriptor
(existing resource blocks will not be affected). It will populate the resource block with
data from the CAPAttachmentDescriptor object. It will also fill in the message digest, if it was not specified
in the CAPAttachmentDescriptor, and it will fill in the size value. It will fill in the URL value with the URL
that a recipient of the alert can use to view/retrieve the resource (using HTTPS).
The alert, with the new resource block, will then be posted as usual; see postCAPAlert(alert, mailList) for details.
- Parameters:
alert
- Alert to be posted.attachments
- Descriptions of the attachments that are added to this message via the
SOAP with Attachments specification. These must correspond, one-to-one, with attachments
in this message. The first attachment descriptor in the array describes the first attachment
in the message, and so on.
- Throws:
java.rmi.RemoteException
- A remote exception occurred- See Also:
postCAPAlert
getCogs
org.cmis.interopserver.beans.SimpleCOG[] getCogs()
throws java.rmi.RemoteException
- Throws:
java.rmi.RemoteException
getMyCog
org.cmis.interopserver.beans.SimpleCOG getMyCog()
throws java.rmi.RemoteException
- Throws:
java.rmi.RemoteException
ping
java.lang.String ping()
throws java.rmi.RemoteException
- Throws:
java.rmi.RemoteException