com.anaptecs.jeaf.junit.tx.impl.TxRequiredServiceImplBase Maven / Gradle / Ivy
/*
* anaptecs GmbH, Ricarda-Huch-Str. 71, 72760 Reutlingen, Germany
*
* Copyright 2004 - 2019. All rights reserved.
*/
package com.anaptecs.jeaf.junit.tx.impl;
import com.anaptecs.jeaf.core.api.Component;
import com.anaptecs.jeaf.core.api.JEAF;
import com.anaptecs.jeaf.core.api.Service;
import com.anaptecs.jeaf.core.api.ServiceInvocationContext;
import com.anaptecs.jeaf.core.spi.ServiceImplementation;
import com.anaptecs.jeaf.junit.tx.TxRequiredService;
import com.anaptecs.jeaf.xfun.api.checks.Assert;
import com.anaptecs.jeaf.xfun.api.trace.Trace;
/**
* Implementation of TxRequiredService.
*/
abstract class TxRequiredServiceImplBase implements TxRequiredService, ServiceImplementation {
/*
* The following constants define the names of all authorization types of the service.
*/
public static final String TESTTRANSACTIONBEHAVIOR_AUTH_TYPE =
"testTransactionBehavior.com.anaptecs.jeaf.junit.tx.TxRequiredService";
/**
* Reference to the component that provides this service implementation. The reference is never null.
*/
private final Component component;
/**
* Reference to to trace object of the component to which this service instance belongs to. The reference is never
* null since the trace object is set in the constructor. The reference is visible to sub classes in order to make
* tracing as easy as possible.
*/
final Trace trace;
/**
* Initialize object.
*/
TxRequiredServiceImplBase( Component pComponent ) {
// Check parameter
Assert.assertNotNull(pComponent, "pComponent");
component = pComponent;
trace = component.getTrace();
}
/**
* Method returns the class object of the service that is implemented by this service instance.
*
* @return Class Class object of the service interface that is implemented by the service instance. The method never
* returns null.
*
* @see ServiceImplementation#getServiceType()
*/
public final Class extends Service> getServiceType( ) {
return TxRequiredService.class;
}
/**
* Method returns the service invocation context for the current service call.
*
* @return ServiceInvocationContext Service invocation context for the current call. The method never returns null as
* long as it is called from within a service call.
*/
protected final ServiceInvocationContext getCurrentServiceInvocationContext( ) {
return JEAF.getContext().getServiceInvocationContext();
}
}