Kieker 1.9

kieker.common.record.misc
Class KiekerMetadataRecord

java.lang.Object
  extended by kieker.common.record.AbstractMonitoringRecord
      extended by kieker.common.record.misc.KiekerMetadataRecord
All Implemented Interfaces:
Serializable, Comparable<IMonitoringRecord>, IMonitoringRecord, IMonitoringRecord.BinaryFactory, IMonitoringRecord.Factory

public final class KiekerMetadataRecord
extends AbstractMonitoringRecord
implements IMonitoringRecord.Factory, IMonitoringRecord.BinaryFactory

This records collects metadata for the monitoring session.

Since:
1.7
Author:
Jan Waller
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface kieker.common.record.IMonitoringRecord
IMonitoringRecord.BinaryFactory, IMonitoringRecord.Factory
 
Field Summary
static String NO_CONTROLLERNAME
          Constant to be used if no value available.
static String NO_HOSTNAME
          Constant to be used if no value available.
static String NO_TIMESOURCE
          Constant to be used if no value available.
static String NO_TIMEUNIT
          Constant to be used if no value available.
static int SIZE
           
static Class<?>[] TYPES
           
 
Fields inherited from class kieker.common.record.AbstractMonitoringRecord
TYPE_SIZE_BOOLEAN, TYPE_SIZE_BYTE, TYPE_SIZE_CHARACTER, TYPE_SIZE_DOUBLE, TYPE_SIZE_FLOAT, TYPE_SIZE_INT, TYPE_SIZE_LONG, TYPE_SIZE_SHORT, TYPE_SIZE_STRING
 
Constructor Summary
KiekerMetadataRecord(ByteBuffer buffer, IRegistry<String> stringRegistry)
          This constructor converts the given array into a record.
KiekerMetadataRecord(Object[] values)
          Creates a new instance of this class using the given parameter.
KiekerMetadataRecord(String version, String controllerName, String hostname, int experimentId, boolean debugMode, long timeOffset, String timeUnit, long numberOfRecords)
          Creates a new instance of this class.
 
Method Summary
 String getControllerName()
           
 int getExperimentId()
           
 String getHostname()
           
 long getNumberOfRecords()
           
 int getSize()
          This method should deliver the size of a binary representation of this record.
 long getTimeOffset()
           
 String getTimeUnit()
           
 Class<?>[] getValueTypes()
          This method should deliver an array with the classes of the single values for the record.
 String getVersion()
           
 void initFromArray(Object[] values)
          Deprecated. This record uses the IMonitoringRecord.Factory mechanism. Hence, this method is not implemented.
 void initFromBytes(ByteBuffer buffer, IRegistry<String> stringRegistry)
          Deprecated. This record uses the IMonitoringRecord.BinaryFactory mechanism. Hence, this method is not implemented.
 boolean isDebugMode()
           
 Object[] toArray()
          This method should deliver an array containing the content of the record.
 String toFormattedString()
          Converts the current record into a formatted string.
 void writeBytes(ByteBuffer buffer, IRegistry<String> stringRegistry)
          This method should deliver an byte array containing the content of the record.
 
Methods inherited from class kieker.common.record.AbstractMonitoringRecord
checkArray, classForName, compareTo, createFromArray, createFromByteBuffer, createFromStringArray, equals, fromStringArrayToTypedArray, getLoggingTimestamp, hashCode, setLoggingTimestamp, toString, typesForClass
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

SIZE

public static final int SIZE
See Also:
Constant Field Values

TYPES

public static final Class<?>[] TYPES

NO_CONTROLLERNAME

public static final String NO_CONTROLLERNAME
Constant to be used if no value available.

See Also:
Constant Field Values

NO_HOSTNAME

public static final String NO_HOSTNAME
Constant to be used if no value available.

See Also:
Constant Field Values

NO_TIMESOURCE

public static final String NO_TIMESOURCE
Constant to be used if no value available.

See Also:
Constant Field Values

NO_TIMEUNIT

public static final String NO_TIMEUNIT
Constant to be used if no value available.

See Also:
Constant Field Values
Constructor Detail

KiekerMetadataRecord

public KiekerMetadataRecord(String version,
                            String controllerName,
                            String hostname,
                            int experimentId,
                            boolean debugMode,
                            long timeOffset,
                            String timeUnit,
                            long numberOfRecords)
Creates a new instance of this class.

Parameters:
version - The Kieker version (can be null).
controllerName - The name of the controller (can be null).
hostname - The name of the host (can be null).
experimentId - The experiment ID.
timeUnit - The time unit (can be null).
timeOffset - The time offset.
debugMode - Whether debug mode is enabled or not.
numberOfRecords - The number of records.

KiekerMetadataRecord

public KiekerMetadataRecord(Object[] values)
Creates a new instance of this class using the given parameter.

Parameters:
values - The array containing the values for the fields of this class. This should normally be the array resulting in a call to toArray().

KiekerMetadataRecord

public KiekerMetadataRecord(ByteBuffer buffer,
                            IRegistry<String> stringRegistry)
                     throws BufferUnderflowException
This constructor converts the given array into a record.

Parameters:
buffer - The bytes for the record.
Throws:
BufferUnderflowException - if buffer not sufficient
Method Detail

toArray

public Object[] toArray()
This method should deliver an array containing the content of the record. It should be possible to convert this array later into a record again.

Specified by:
toArray in interface IMonitoringRecord
Returns:
An array with the values of the record.

writeBytes

public void writeBytes(ByteBuffer buffer,
                       IRegistry<String> stringRegistry)
                throws BufferOverflowException
This method should deliver an byte array containing the content of the record. It should be possible to convert this array later into a record again.

Specified by:
writeBytes in interface IMonitoringRecord
Parameters:
buffer - The used ByteBuffer with sufficient capacity
stringRegistry - Usually the associated MonitoringController
Throws:
BufferOverflowException - if buffer not sufficient

initFromArray

@Deprecated
public final void initFromArray(Object[] values)
Deprecated. This record uses the IMonitoringRecord.Factory mechanism. Hence, this method is not implemented.

This method should initialize the record based on the given values. The array should be one of those resulting from a call to IMonitoringRecord.toArray().

Specified by:
initFromArray in interface IMonitoringRecord
Parameters:
values - The values for the record.

initFromBytes

@Deprecated
public final void initFromBytes(ByteBuffer buffer,
                                           IRegistry<String> stringRegistry)
                         throws BufferUnderflowException
Deprecated. This record uses the IMonitoringRecord.BinaryFactory mechanism. Hence, this method is not implemented.

This method should initialize the record based on the given values. The array should be one of those resulting from a call to IMonitoringRecord.writeBytes(ByteBuffer, IRegistry).

Specified by:
initFromBytes in interface IMonitoringRecord
Parameters:
buffer - The bytes for the record.
stringRegistry - The Registry storing the strings.
Throws:
BufferUnderflowException - if buffer not sufficient

getValueTypes

public Class<?>[] getValueTypes()
This method should deliver an array with the classes of the single values for the record.

Specified by:
getValueTypes in interface IMonitoringRecord
Returns:
The types of the values. This returned array should be treated readonly.
See Also:
IMonitoringRecord.toArray()

getSize

public int getSize()
This method should deliver the size of a binary representation of this record.

Specified by:
getSize in interface IMonitoringRecord
Returns:
The size.

getVersion

public final String getVersion()

getControllerName

public final String getControllerName()

getHostname

public final String getHostname()

getExperimentId

public final int getExperimentId()

isDebugMode

public final boolean isDebugMode()

getTimeOffset

public final long getTimeOffset()

getTimeUnit

public final String getTimeUnit()

getNumberOfRecords

public final long getNumberOfRecords()

toFormattedString

public String toFormattedString()
Converts the current record into a formatted string.

Returns:
A formatted string representation of this record.

Kieker 1.9

Copyright 2014 Kieker Project, http://kieker-monitoring.net