Package org.opentcs.access.rmi.services

# Interface RemoteTCSObjectService

All Superinterfaces:
  `java.rmi.Remote`

All Known Subinterfaces:
  `RemotePeripheralJobService`, `RemotePeripheralService`, `RemotePlantModelService`, `RemoteTransportOrderService`, `RemoteVehicleService`

    public interface RemoteTCSObjectService
    extends java.rmi.Remote

Declares the methods provided by the `TCSObjectService` via RMI.

The majority of the methods declared here have signatures analogous to their counterparts in `TCSObjectService`, with an additional `ClientID` parameter which serves the purpose of identifying the calling client and determining its permissions.

To avoid redundancy, the semantics of methods that only pass through their arguments are not explicitly documented here again. See the corresponding API documentation in `TCSObjectService` for these, instead.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `appendObjectHistoryEntry​(ClientID clientId, TCSObjectReference<?> ref, ObjectHistory.Entry entry)` |
  `<T extends TCSObject<T>> T` | `fetchObject​(ClientID clientId, java.lang.Class<T> clazz, java.lang.String name)` |
  `<T extends TCSObject<T>> T` | `fetchObject​(ClientID clientId, java.lang.Class<T> clazz, TCSObjectReference<T> ref)` |
  `<T extends TCSObject<T>> java.util.Set<T>` | `fetchObjects​(ClientID clientId, java.lang.Class<T> clazz)` |
  `<T extends TCSObject<T>> java.util.Set<T>` | `fetchObjects​(ClientID clientId, java.lang.Class<T> clazz, java.util.function.Predicate<? super T> predicate)` |
  `void` | `updateObjectProperty​(ClientID clientId, TCSObjectReference<?> ref, java.lang.String key, java.lang.String value)` |

- ## Method Details

  - ### fetchObject

    <T extends TCSObject<T>> T fetchObject​(ClientID clientId, java.lang.Class<T> clazz, TCSObjectReference<T> ref) throws java.rmi.RemoteException
    Throws:
      `java.rmi.RemoteException`

  - ### fetchObject

    <T extends TCSObject<T>> T fetchObject​(ClientID clientId, java.lang.Class<T> clazz, java.lang.String name) throws java.rmi.RemoteException
    Throws:
      `java.rmi.RemoteException`

  - ### fetchObjects

    <T extends TCSObject<T>> java.util.Set<T> fetchObjects​(ClientID clientId, java.lang.Class<T> clazz) throws java.rmi.RemoteException
    Throws:
      `java.rmi.RemoteException`

  - ### fetchObjects

    <T extends TCSObject<T>> java.util.Set<T> fetchObjects​(ClientID clientId, java.lang.Class<T> clazz, java.util.function.Predicate<? super T> predicate) throws java.rmi.RemoteException
    Throws:
      `java.rmi.RemoteException`

  - ### updateObjectProperty

    void updateObjectProperty​(ClientID clientId, TCSObjectReference<?> ref, java.lang.String key, java.lang.String value) throws java.rmi.RemoteException
    Throws:
      `java.rmi.RemoteException`

  - ### appendObjectHistoryEntry

    void appendObjectHistoryEntry​(ClientID clientId, TCSObjectReference<?> ref, ObjectHistory.Entry entry) throws java.rmi.RemoteException
    Throws:
      `java.rmi.RemoteException`