org.opentcs.access.rmi.services.RemoteVehicleServiceProxy Maven / Gradle / Ivy
/**
* Copyright (c) The openTCS Authors.
*
* This program is free software and subject to the MIT license. (For details,
* see the licensing information (LICENSE.txt) you should have received with
* this copy of the software.)
*/
package org.opentcs.access.rmi.services;
import java.rmi.RemoteException;
import java.util.Set;
import org.opentcs.access.KernelRuntimeException;
import org.opentcs.components.kernel.services.VehicleService;
import org.opentcs.data.ObjectUnknownException;
import org.opentcs.data.TCSObjectReference;
import org.opentcs.data.model.Vehicle;
import org.opentcs.data.model.Vehicle.EnergyLevelThresholdSet;
import org.opentcs.drivers.vehicle.AdapterCommand;
import org.opentcs.drivers.vehicle.VehicleCommAdapterDescription;
import org.opentcs.drivers.vehicle.management.VehicleAttachmentInformation;
import org.opentcs.drivers.vehicle.management.VehicleProcessModelTO;
/**
* The default implementation of the vehicle service.
* Delegates method invocations to the corresponding remote service.
*/
class RemoteVehicleServiceProxy
extends
RemoteTCSObjectServiceProxy
implements
VehicleService {
/**
* Creates a new instance.
*/
RemoteVehicleServiceProxy() {
}
@Override
public void attachCommAdapter(
TCSObjectReference ref,
VehicleCommAdapterDescription description
)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().attachCommAdapter(getClientId(), ref, description);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void disableCommAdapter(TCSObjectReference ref)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().disableCommAdapter(getClientId(), ref);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void enableCommAdapter(TCSObjectReference ref)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().enableCommAdapter(getClientId(), ref);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public VehicleAttachmentInformation fetchAttachmentInformation(TCSObjectReference ref)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
return getRemoteService().fetchAttachmentInformation(getClientId(), ref);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public VehicleProcessModelTO fetchProcessModel(TCSObjectReference ref)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
return getRemoteService().fetchProcessModel(getClientId(), ref);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void sendCommAdapterCommand(TCSObjectReference ref, AdapterCommand command)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().sendCommAdapterCommand(getClientId(), ref, command);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void sendCommAdapterMessage(TCSObjectReference ref, Object message)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().sendCommAdapterMessage(getClientId(), ref, message);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void updateVehicleIntegrationLevel(
TCSObjectReference ref,
Vehicle.IntegrationLevel integrationLevel
)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().updateVehicleIntegrationLevel(getClientId(), ref, integrationLevel);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void updateVehiclePaused(TCSObjectReference ref, boolean paused)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().updateVehiclePaused(getClientId(), ref, paused);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void updateVehicleEnergyLevelThresholdSet(
TCSObjectReference ref,
EnergyLevelThresholdSet energyLevelThresholdSet
)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().updateVehicleEnergyLevelThresholdSet(
getClientId(),
ref,
energyLevelThresholdSet
);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void updateVehicleAllowedOrderTypes(
TCSObjectReference ref,
Set allowedOrderTypes
)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().updateVehicleAllowedOrderTypes(
getClientId(),
ref,
allowedOrderTypes
);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
@Override
public void updateVehicleEnvelopeKey(TCSObjectReference ref, String envelopeKey)
throws ObjectUnknownException,
KernelRuntimeException {
checkServiceAvailability();
try {
getRemoteService().updateVehicleEnvelopeKey(getClientId(), ref, envelopeKey);
}
catch (RemoteException ex) {
throw findSuitableExceptionFor(ex);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy