iaik.tc.tss.impl.java.tcs.eventmgr
Class TcTcsEventMgrMem

java.lang.Object
  extended by iaik.tc.tss.impl.java.tcs.eventmgr.TcTcsEventMgrMem
All Implemented Interfaces:
TcITcsEventMgr

public class TcTcsEventMgrMem
extends java.lang.Object
implements TcITcsEventMgr

This class implements a basic "in memory" event manager. That is, all events are stored in memory. Since the TCS is a software that might run long times without being restarted this type of implementation has the drawback that the memory footprint will increase over time (events do not get removed from the log once they are added). Alternative implementations might use some database and/or disk backends to provide better scalability and efficiency.


Method Summary
static TcITcsEventMgr getInstance()
           
 TcTssPcrEvent getPcrEvent(long pcrIndex, long number)
          TcTcsi.TcsiGetPcrEvent(long, long, long)
 long getPcrEventCount(long pcrIndex)
          TcTcsi.TcsiGetPcrEventCount(long, long)
 TcTssPcrEvent[] getPcrEventLog()
          TcTcsi.TcsiGetPcrEventLog(long)
 TcTssPcrEvent[] getPcrEventsByPcr(long pcrIndex, long firstEvent, long eventCount)
          TcTcsi.TcsiGetPcrEventsByPcr(long, long, long, long)
 long logPcrEvent(TcTssPcrEvent pcrEvent)
          TcTcsi.TcsiLogPcrEvent(long, TcTssPcrEvent)
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getPcrEvent

public TcTssPcrEvent getPcrEvent(long pcrIndex,
                                 long number)
                          throws TcTcsException
Description copied from interface: TcITcsEventMgr
TcTcsi.TcsiGetPcrEvent(long, long, long)

Specified by:
getPcrEvent in interface TcITcsEventMgr
Throws:
TcTcsException

getPcrEventCount

public long getPcrEventCount(long pcrIndex)
                      throws TcTcsException
Description copied from interface: TcITcsEventMgr
TcTcsi.TcsiGetPcrEventCount(long, long)

Specified by:
getPcrEventCount in interface TcITcsEventMgr
Throws:
TcTcsException

getPcrEventLog

public TcTssPcrEvent[] getPcrEventLog()
                               throws TcTcsException
Description copied from interface: TcITcsEventMgr
TcTcsi.TcsiGetPcrEventLog(long)

Specified by:
getPcrEventLog in interface TcITcsEventMgr
Throws:
TcTcsException

getPcrEventsByPcr

public TcTssPcrEvent[] getPcrEventsByPcr(long pcrIndex,
                                         long firstEvent,
                                         long eventCount)
                                  throws TcTcsException
Description copied from interface: TcITcsEventMgr
TcTcsi.TcsiGetPcrEventsByPcr(long, long, long, long)

Specified by:
getPcrEventsByPcr in interface TcITcsEventMgr
Throws:
TcTcsException

logPcrEvent

public long logPcrEvent(TcTssPcrEvent pcrEvent)
                 throws TcTcsException
Description copied from interface: TcITcsEventMgr
TcTcsi.TcsiLogPcrEvent(long, TcTssPcrEvent)

Specified by:
logPcrEvent in interface TcITcsEventMgr
Throws:
TcTcsException

getInstance

public static TcITcsEventMgr getInstance()
                                  throws TcTcsException
Throws:
TcTcsException