Commit bcd89de8 authored by agordon's avatar agordon

edits from email threads

parent cd14485c
......@@ -39,10 +39,10 @@ public interface CAHandler extends Remote
public static final int AC_BAD_MANUFACTURER = 0x11;
/** Access criteria package is not implemented. */
public static final int AC_NOT_IMPLEMENTED = 0x12;
public static final int AC_NOT_IMPLEMENTED = 0x13;
/** Access criteria package rejected – other reasons. */
public static final int AC_FAILED = 0x13;
public static final int AC_FAILED = 0x12;
/** The CA handler is in the process of initializing and is not ready to process requests. */
......@@ -308,28 +308,26 @@ public interface CAHandler extends Remote
* can consider previous <code>CAAuthorization</code> instances associated with this <code>CAAuthorization</code>
* listener to be stale.
* <br>
* With a <code>CAHandler</code> that cannot determine the source id to entitlement id mapping
* internally the <code>setSourceEntitlements</code> method needs to be called before this
* method is called. Failure to do so SHALL result in this method throwing an
* <code>IllegalStateException</code>.
* If this method is called when the CableCARD is not configured for the service and the CA Handler cannot
* determine the source id to entitlement id mapping, the CA Handler SHALL return NULL if the
* setSourceEntitlement method has not been called before this one. If this method is called when the
* CableCARD is configured for the service, the SetSourceEntitlements method does not need to be called.
* This method SHALL return NULL if the sourceID is not defined in the CA system.
*
* @param sourceID the source id of the selected service.
* @param listener a listener to be notified when the authorization state of the
* changes. May be null.
* @return Authorizations in the form of a <code>CAAuthorization</code> object. Null if the <code>CAHandler</code> is
* not aware of the source id.
* @return Authorizations in the form of a CAAuthorization object. Null if the sourceID is not defined in
* the CA system or the CA Handler can not determine entitlement
*
* @throws CAIOException Thrown if the Host cannot communicate with the CAS client,
* or if the CAS client returns any errors.
* @throws IllegalStateException Thrown if the <code>CAHandler</code> implementation cannot determine
* source id to entitlement id mapping internally and the <code>setSourceEntitlements</code> method
* has not been called to provide the mapping.
* @throws CANoResourcesException Thrown if this method was called with a listener
* and the <code>CAHandler</code> does not have the resources required to monitor authorization for this source.
* @throws RemoteException Thrown if there is problem with IXC communication.
*/
public CAAuthorization getSourceAuthorization(short sourceID, CAAuthorizationListener listener)
throws CAIOException, RemoteException, IllegalStateException, CANoResourcesException;
throws CAIOException, RemoteException, CANoResourcesException;
/**
......@@ -355,7 +353,7 @@ public interface CAHandler extends Remote
* @param eID an entitlement ID for the selected resource
* @param listener a listener to be notified when the authorization state of the
* changes. May be null.
* @return Authorization in the form of a <code>CAAuthorization</code> object. Null if the <code>CAHandler</code> knows
* @return Authorization in the form of a <code>CAAuthorization</code> object. Not Authorized if the <code>CAHandler</code> knows
* that the <code>eID</code> is not defined in the system.
*
* @throws CAIOException Thrown if the Host cannot communicate with the CAS client,
......@@ -387,10 +385,15 @@ public interface CAHandler extends Remote
* can consider previous <code>CAAuthorization</code> instances associated with this <code>CAAuthorization</code>
* listener to be stale.
* <br>
* With a <code>CAHandler</code> that cannot determine the source id to entitlement id mapping
* internally the <code>setSourceEntitlements</code> method SHALL be called before this
* method is called. Failure to do so SHALL result in this method throwing an
* <code>IllegalStateException</code>.
*If this method is called when the CableCARD is not configured for the service and the CA Handler cannot
*determine the source id to entitlement id mapping, the CA Handler SHALL return NULL if the
*setSourceEntitlement method has not been called before this one. If this method is called when the
*CableCARD is configured for the service, the SetSourceEntitlements does not need to be called. This
*method SHALL return NULL if the sourceID is not defined in the CA system.
*
*Note: The CableCARD is configured for a service when a call to the ServiceContext.select(Service) method returns a
*NormalContentEvent, or AlternativeContentErrorEvent with reason a code CA REFUSAL. All other reason codes
*for the AlternativeContentErrorEvent indicate that the CableCARD may not be configured for the service.”
*
* @param sourceID source id of the PPV service.
* @param eID Pay Per View entitlement id.
......@@ -399,9 +402,6 @@ public interface CAHandler extends Remote
* @return A <code>CAAuthorization</code> object for the IPPV program identified by the <code>sourceID</code> and <code>eID</code>. Null
* if the <code>sourceID</code> / <code>eID</code> are not know to the <code>CAHandler</code>.
*
* @throws IllegalStateException Thrown if the <code>CAHandler</code> implementation cannot determine
* source id to entitlement id mapping internally and the <code>setSourceEntitlements</code> method
* has not been called to provide the mapping.
* @throws CAIOException Thrown if the Host cannot communicate with the CAS client, or
* if the CAS client returns any error.
* @throws CANoResourcesException Thrown if this method was called with a listener
......@@ -409,7 +409,7 @@ public interface CAHandler extends Remote
* @throws RemoteException Thrown if there is problem with IXC communication.
*/
public CAAuthorization getIppvAuthorization(short sourceID, long eID, CAAuthorizationListener listener)
throws IllegalStateException, CAIOException, RemoteException, CANoResourcesException;
throws CAIOException, RemoteException, CANoResourcesException;
/**
* Indicates whether an IPPV purchase can be made with the CAS client.
......@@ -521,9 +521,10 @@ public interface CAHandler extends Remote
*
* @return A list of purchased EIDs that have not yet been reported to the control system.
* @throws CAIOException Thrown if the Host cannot communicate with the CA client.
* @throws java.rmi.RemoteException
*/
public java.util.Vector getUnforwardedPurchaseList()
throws CAIOException;
throws CAIOException, java.rmi.RemoteException;
/**
* Returns a collection of vendor specific attributes. This is intended to
......@@ -532,8 +533,9 @@ public interface CAHandler extends Remote
* other methods in this class.
*
* @return A <code>Properties</code> object containing all attributes.
* @throws java.rmi.RemoteException
*/
public Properties getAttributes();
public Properties getAttributes() throws java.rmi.RemoteException;
/**
* Returns the value of a single vendor specific attributes. This is intended to
......@@ -544,7 +546,8 @@ public interface CAHandler extends Remote
* @param attributeName The name of the requested attribute.
* @return A <code>String</code> representation of the attribute value or null if the requested
* attribute does not exist.
* @throws java.rmi.RemoteException
*/
public String getAttribute(String attributeName);
public String getAttribute(String attributeName) throws java.rmi.RemoteException;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment