8#include "Arp/Base/Rsc/Commons/Rsc.hpp"
9#include "Arp/Base/Rsc/Commons/IRscService.hpp"
10#include "Arp/Base/Rsc/Commons/Services/RscClient.hpp"
12namespace Arp::Base::Rsc::Commons::Services
22 using Ptr = std::shared_ptr<IRscServiceProxy>;
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
This is the base interface of all Rsc services.
Definition: IRscService.hpp:22
std::shared_ptr< IRscService > Ptr
The shared_ptr type of IRscService.
Definition: IRscService.hpp:25
Interface of RSC service proxies used on client side to invoke a service remotely.
Definition: IRscServiceProxy.hpp:20
virtual String GetServiceProviderName(void) const =0
Gets the service provider name of this proxy.
IRscServiceProxy & operator=(IRscServiceProxy &&arg) noexcept=default
The default move-assignment operator.
IRscServiceProxy & operator=(const IRscServiceProxy &)=delete
The deleted assignment operator.
IRscServiceProxy(void)=default
The default constructor.
virtual RscHandle GetServiceProviderHandle(void)=0
Gets the service handle of the remote service-provider instance.
virtual String GetServiceName(void) const =0
Gets the service name of this proxy.
virtual RscClient & GetRscClient(void) const =0
Gets the RscClient of this proxy.
virtual RscHandle GetServiceHandle(void)=0
Gets the service handle of the remote service instance.
virtual void ReadServiceHandles(void)=0
Updates the service handle of the remote service instance.
virtual ~IRscServiceProxy(void)=default
Destructs this instance and frees all resources.
IRscServiceProxy(IRscServiceProxy &&arg) noexcept=default
The default move constructor.
IRscServiceProxy(const IRscServiceProxy &arg)=delete
The deleted copy constructor.
This class monitors a RSC client call using RAII idiom.
Definition: RscClient.TransactionGuard.hpp:18