LoggingService is used to log messages and exceptions relating to system operation.
public abstract class LoggingService extends Service
{
public final void logError( String message )
public final void logError( String message, Throwable e )
public final void logWarning( String message )
public final void log( Throwable e )
public abstract void log( Status status )
}
Example
try
{
...
}
catch( Exception e )
{
Sapphire.service( LoggingService.class ).log( e );
}
Two implementations are provided with Sapphire. One writes to the system error stream and another writes to the Eclipse platform log if the framework is running in the context of Eclipse.
If an alternate log strategy is desired, a custom LoggingService implementation can be supplied.
Example
public class ExampleLoggingService extends LoggingService
{
@Override
public void log( Status status )
{
...
}
}
<extension xmlns="http://www.eclipse.org/sapphire/xmlns/extension">
<service>
<id>ExampleLoggingService</id>
<implementation>org.eclipse.sapphire.examples.ExampleLoggingService</implementation>
<context>Sapphire</context>
<overrides>Sapphire.LoggingService.Standard</overrides>
<overrides>Sapphire.LoggingService.Platform</overrides>
</service>
</extension>