at.gv.egiz.moodle.eidconnector.logging.impl
Class CSVStatisticLogger

java.lang.Object
  extended by at.gv.egiz.moodle.eidconnector.logging.impl.CSVStatisticLogger
All Implemented Interfaces:
StatisticLogger

public class CSVStatisticLogger
extends Object
implements StatisticLogger

Implementation of a statistical logger based on slf4j that returns CSV based log entries. Note that instead of commas, semicolons are used as delimiter.

Author:
AT-TUG (Thomas Knall)
See Also:
http://tools.ietf.org/html/rfc4180

Field Summary
static String DELIMITER
           
 
Constructor Summary
CSVStatisticLogger()
           
 
Method Summary
 void log(Date timestamp, String assertionIssuerId, String spID, String sha1OfEID, String citizenCountryCode, Integer citizenQAALevel, Integer age, Object... others)
          Creates a log entry with log level DEBUG using the data provided.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DELIMITER

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

CSVStatisticLogger

public CSVStatisticLogger()
Method Detail

log

public void log(Date timestamp,
                String assertionIssuerId,
                String spID,
                String sha1OfEID,
                String citizenCountryCode,
                Integer citizenQAALevel,
                Integer age,
                Object... others)
Creates a log entry with log level DEBUG using the data provided. Note that timestamp, assertionIssuerId and spID must not be null, while the remaining parameters might be.
After parameter age an arbitrary number of various user defined parameters might be passed. These additional fields are also logged if provided.
Values that are null are replaced by an empty String:
e.g. if citizenCountryCode == null and age == null
2010-09-07T09:27:20.697Z;VIDP-AT;SaferChat-AT;eFKN39cIZoDjRRZOKhYlTD3dcXE=;;4;

Specified by:
log in interface StatisticLogger
Parameters:
timestamp - The current date. Should be formatted as UTC timestamp according to "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'".
assertionIssuerId - The identifier of the underlying S-PEPS/V-IDP instance.
spID - The identifier of the service provider being served.
sha1OfEID - A base64 encoded String of the SHA1 hash of the citizen's eIdentifier.
citizenCountryCode - The citizen's home country code (according to ISO 3166-1 alpha-2).
citizenQAALevel - The underlying QAA level.
age - The citizen's age.
others - An arbitrary number of further fields to be logged.


Copyright 2009 EGIZ. All Rights Reserved.