edu.nyu.cs.pdsg.drbac
Class ProofMonitor

java.lang.Object
  extended byedu.nyu.cs.pdsg.drbac.ProofMonitor
All Implemented Interfaces:
WalletSubscriber

public class ProofMonitor
extends java.lang.Object
implements WalletSubscriber

An object that keeps track of the validity of a proof. Trust sensetive applications recieve one of these upon calling Wallet.prove()


Field Summary
(package private)  java.util.ArrayList listeners
          This list contains ProofChangedListeners
(package private)  Proof proof
          The proof
 
Constructor Summary
(package private) ProofMonitor(Proof _proof, ProofChangedListener _listener)
          Initialize a ProofMonitor
 
Method Summary
 void addListener(ProofChangedListener listener)
          Is it ok for this method to be public? Might leak too much information about what an application is concerned with.
 boolean checkStatus()
           
protected  void finalize()
           
 java.lang.Object getConstraint(Role attributeRole)
           
 AttributeSet getConstraints()
           
 Proof getProof()
          This is a slight violation of the privacy.
 void printStatus()
          print the status of this proof
 void removeListener(ProofChangedListener listener)
          Stop recieving updates on the status of this proof
 java.lang.String toString()
           
 void update(java.lang.Object status)
          Called when the status of the proof changes
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

proof

Proof proof
The proof


listeners

java.util.ArrayList listeners
This list contains ProofChangedListeners

Constructor Detail

ProofMonitor

ProofMonitor(Proof _proof,
             ProofChangedListener _listener)
Initialize a ProofMonitor

Parameters:
_proof - the delegations needed to support this chain
_listener - an object interested in recieving status updates on this proof
Method Detail

addListener

public void addListener(ProofChangedListener listener)
Is it ok for this method to be public? Might leak too much information about what an application is concerned with. Need to re-structure in a secure fashion later Request updates on the status of this proof

Parameters:
listener - an object interested in recieving status updates on this proof

removeListener

public void removeListener(ProofChangedListener listener)
Stop recieving updates on the status of this proof

Parameters:
listener - the object which no longer needs status updates

update

public void update(java.lang.Object status)
Called when the status of the proof changes

Specified by:
update in interface WalletSubscriber
Parameters:
status - the status of the proof

getProof

public Proof getProof()
This is a slight violation of the privacy.


getConstraint

public java.lang.Object getConstraint(Role attributeRole)

getConstraints

public AttributeSet getConstraints()

checkStatus

public boolean checkStatus()
Returns:
the status of the proof

printStatus

public void printStatus()
print the status of this proof


toString

public java.lang.String toString()

finalize

protected void finalize()
                 throws java.lang.Throwable
Throws:
java.lang.Throwable


Copyright (c) 2002-2003 New York University RLAB