7#ifndef IceGrid_Descriptor_h_
8#define IceGrid_Descriptor_h_
12#include <Ice/BuiltinSequences.h>
13#include <Ice/Identity.h>
14#include <IceGrid/Config.h>
16#ifndef ICE_DISABLE_VERSION
17# if ICE_INT_VERSION != 30850
18# error Ice version mismatch: an exact match is required for beta generated code
23# if defined(ICEGRID_API_EXPORTS)
24# define ICEGRID_API ICE_DECLSPEC_EXPORT
26# define ICEGRID_API ICE_DECLSPEC_IMPORT
57 struct [[deprecated(
"This descriptor is provided for schema compatibility. It is no longer used as of Ice 3.8.")]]
DbEnvDescriptor;
60 using DbEnvDescriptorSeq [[deprecated(
"This descriptor is provided for schema compatibility. It is no longer used as of Ice 3.8.")]] = std::vector<DbEnvDescriptor>;
67 struct [[deprecated(
"This descriptor is provided for schema compatibility. It is no longer used as of Ice 3.8.")]]
DistributionDescriptor;
158 using BoxedDistributionDescriptorPtr [[deprecated]] = std::shared_ptr<BoxedDistributionDescriptor>;
177 [[nodiscard]] std::tuple<const std::string&, const std::string&>
ice_tuple()
const
205 [[nodiscard]] std::tuple<const ::Ice::StringSeq&, const ::IceGrid::PropertyDescriptorSeq&>
ice_tuple()
const
237 [[nodiscard]] std::tuple<const ::Ice::Identity&, const std::string&, const std::string&>
ice_tuple()
const
288 [[nodiscard]] std::tuple<const std::string&, const std::string&, const std::string&, const std::string&, const std::string&, const bool&, const bool&, const ::IceGrid::ObjectDescriptorSeq&, const ::IceGrid::ObjectDescriptorSeq&>
ice_tuple()
const
306 struct [[deprecated(
"This descriptor is provided for schema compatibility. It is no longer used as of Ice 3.8.")]]
DbEnvDescriptor
322 [[nodiscard]] std::tuple<const std::string&, const std::string&, const std::string&, const ::IceGrid::PropertyDescriptorSeq&>
ice_tuple()
const
365 [[nodiscard]] const
char*
ice_id() const noexcept override;
387 [[deprecated]] ::IceGrid::DbEnvDescriptorSeq
dbEnvs;
411 struct [[deprecated(
"This descriptor is provided for schema compatibility. It is no longer used as of Ice 3.8.")]]
DistributionDescriptor
421 [[nodiscard]] std::tuple<const std::string&, const ::Ice::StringSeq&>
ice_tuple()
const
464 ServerDescriptor(::
IceGrid::
AdapterDescriptorSeq adapters, ::
IceGrid::
PropertySetDescriptor propertySet, ::
IceGrid::DbEnvDescriptorSeq
dbEnvs, ::
Ice::StringSeq
logs, std::
string description, std::
string id, std::
string exe, std::
string iceVersion, std::
string pwd, ::
Ice::StringSeq
options, ::
Ice::StringSeq
envs, std::
string activation, std::
string activationTimeout, std::
string deactivationTimeout,
bool applicationDistrib, ::
IceGrid::
DistributionDescriptor distrib,
bool allocatable, std::
string user) noexcept :
486 [[nodiscard]] const
char*
ice_id() const noexcept override;
490 [[nodiscard]] std::tuple<const ::
IceGrid::
AdapterDescriptorSeq&, const ::
IceGrid::
PropertySetDescriptor&, const ::
IceGrid::DbEnvDescriptorSeq&, const ::
Ice::StringSeq&, const std::
string&, const std::
string&, const std::
string&, const std::
string&, const std::
string&, const ::
Ice::StringSeq&, const ::
Ice::StringSeq&, const std::
string&, const std::
string&, const std::
string&, const
bool&, const ::
IceGrid::
DistributionDescriptor&, const
bool&, const std::
string&>
ice_tuple()
const
492 return std::tie(
adapters,
propertySet,
dbEnvs,
logs,
description,
id,
exe,
iceVersion,
pwd,
options,
envs,
activation,
activationTimeout,
deactivationTimeout,
applicationDistrib,
distrib,
allocatable,
user);
585 [[nodiscard]] const
char*
ice_id() const noexcept override;
639 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::StringStringDict&, const ::IceGrid::PropertySetDescriptor&, const ::IceGrid::PropertySetDescriptorDict&>
ice_tuple()
const
670 [[nodiscard]] std::tuple<const ::IceGrid::CommunicatorDescriptorPtr&, const ::Ice::StringSeq&, const ::IceGrid::StringStringDict&>
ice_tuple()
const
704 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::StringStringDict&, const ::IceGrid::ServiceDescriptorPtr&, const ::IceGrid::PropertySetDescriptor&>
ice_tuple()
const
748 IceBoxDescriptor(::
IceGrid::
AdapterDescriptorSeq adapters, ::
IceGrid::
PropertySetDescriptor propertySet, ::
IceGrid::DbEnvDescriptorSeq
dbEnvs, ::
Ice::StringSeq
logs, std::
string description, std::
string id, std::
string exe, std::
string iceVersion, std::
string pwd, ::
Ice::StringSeq
options, ::
Ice::StringSeq
envs, std::
string activation, std::
string activationTimeout, std::
string deactivationTimeout,
bool applicationDistrib, ::
IceGrid::
DistributionDescriptor distrib,
bool allocatable, std::
string user, ::
IceGrid::
ServiceInstanceDescriptorSeq services) noexcept :
749 ServerDescriptor(std::move(
adapters), std::move(
propertySet), std::move(
dbEnvs), std::move(
logs), std::move(
description), std::move(
id), std::move(
exe), std::move(
iceVersion), std::move(
pwd), std::move(
options), std::move(
envs), std::move(
activation), std::move(
activationTimeout), std::move(
deactivationTimeout),
applicationDistrib, std::move(
distrib),
allocatable, std::move(
user)),
758 [[nodiscard]] const
char*
ice_id() const noexcept override;
762 [[nodiscard]] std::tuple<const ::
IceGrid::
AdapterDescriptorSeq&, const ::
IceGrid::
PropertySetDescriptor&, const ::
IceGrid::DbEnvDescriptorSeq&, const ::
Ice::StringSeq&, const std::
string&, const std::
string&, const std::
string&, const std::
string&, const std::
string&, const ::
Ice::StringSeq&, const ::
Ice::StringSeq&, const std::
string&, const std::
string&, const std::
string&, const
bool&, const ::
IceGrid::
DistributionDescriptor&, const
bool&, const std::
string&, const ::
IceGrid::
ServiceInstanceDescriptorSeq&>
ice_tuple()
const
764 return std::tie(
adapters,
propertySet,
dbEnvs,
logs,
description,
id,
exe,
iceVersion,
pwd,
options,
envs,
activation,
activationTimeout,
deactivationTimeout,
applicationDistrib,
distrib,
allocatable,
user,
services);
814 [[nodiscard]] std::tuple<const ::IceGrid::StringStringDict&, const ::IceGrid::ServerInstanceDescriptorSeq&, const ::IceGrid::ServerDescriptorSeq&, const std::string&, const std::string&, const ::IceGrid::PropertySetDescriptorDict&>
ice_tuple()
const
849 [[nodiscard]] const
char*
ice_id() const noexcept override;
853 [[nodiscard]] std::tuple<const std::
string&>
ice_tuple()
const
891 [[nodiscard]] const
char*
ice_id() const noexcept override;
921 [[nodiscard]] const
char*
ice_id() const noexcept override;
951 [[nodiscard]] const
char*
ice_id() const noexcept override;
992 [[nodiscard]] const
char*
ice_id() const noexcept override;
996 [[nodiscard]] std::tuple<const std::
string&, const std::
string&>
ice_tuple()
const
1049 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::LoadBalancingPolicyPtr&, const std::string&, const ::IceGrid::ObjectDescriptorSeq&, const std::string&, const std::string&>
ice_tuple()
const
1098 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::StringStringDict&, const ::IceGrid::ReplicaGroupDescriptorSeq&, const ::IceGrid::TemplateDescriptorDict&, const ::IceGrid::TemplateDescriptorDict&, const ::IceGrid::NodeDescriptorDict&, const ::IceGrid::DistributionDescriptor&, const std::string&, const ::IceGrid::PropertySetDescriptorDict&>
ice_tuple()
const
1133 [[nodiscard]] const
char*
ice_id() const noexcept override;
1137 [[nodiscard]] std::tuple<const std::
string&>
ice_tuple()
const
1139 return std::tie(
value);
1201 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::BoxedStringPtr&, const ::IceGrid::StringStringDict&, const ::Ice::StringSeq&, const ::IceGrid::PropertySetDescriptorDict&, const ::Ice::StringSeq&, const ::IceGrid::ServerInstanceDescriptorSeq&, const ::IceGrid::ServerDescriptorSeq&, const ::Ice::StringSeq&, const ::IceGrid::BoxedStringPtr&>
ice_tuple()
const
1236 [[nodiscard]] const
char*
ice_id() const noexcept override;
1242 return std::tie(
value);
1247 [[nodiscard]] BoxedDistributionDescriptorPtr
ice_clone()
const {
return std::static_pointer_cast<BoxedDistributionDescriptor>(_iceCloneImpl()); }
1279 [[deprecated]] ::IceGrid::BoxedDistributionDescriptorPtr
distrib;
1319 [[nodiscard]] std::tuple<const std::string&, const ::IceGrid::BoxedStringPtr&, const ::IceGrid::BoxedDistributionDescriptorPtr&, const ::IceGrid::StringStringDict&, const ::Ice::StringSeq&, const ::IceGrid::PropertySetDescriptorDict&, const ::Ice::StringSeq&, const ::IceGrid::ReplicaGroupDescriptorSeq&, const ::Ice::StringSeq&, const ::IceGrid::TemplateDescriptorDict&, const ::Ice::StringSeq&, const ::IceGrid::TemplateDescriptorDict&, const ::Ice::StringSeq&, const ::IceGrid::NodeUpdateDescriptorSeq&, const ::Ice::StringSeq&>
ice_tuple()
const
1321 return std::tie(
name,
description,
distrib,
variables,
removeVariables,
propertySets,
removePropertySets,
replicaGroups,
removeReplicaGroups,
serverTemplates,
removeServerTemplates,
serviceTemplates,
removeServiceTemplates,
nodes,
removeNodes);
1336 using Ice::Tuple::operator<;
1337 using Ice::Tuple::operator<=;
1338 using Ice::Tuple::operator>;
1339 using Ice::Tuple::operator>=;
1340 using Ice::Tuple::operator==;
1341 using Ice::Tuple::operator!=;
1357 struct StreamReader<::IceGrid::PropertyDescriptor>
1360 static void read(InputStream* istr, ::IceGrid::PropertyDescriptor& v)
1377 struct StreamReader<::IceGrid::PropertySetDescriptor>
1380 static void read(InputStream* istr, ::IceGrid::PropertySetDescriptor& v)
1397 struct StreamReader<::IceGrid::ObjectDescriptor>
1400 static void read(InputStream* istr, ::IceGrid::ObjectDescriptor& v)
1417 struct StreamReader<::IceGrid::AdapterDescriptor>
1420 static void read(InputStream* istr, ::IceGrid::AdapterDescriptor& v)
1437 struct StreamReader<::IceGrid::DbEnvDescriptor>
1440 static void read(InputStream* istr, ::IceGrid::DbEnvDescriptor& v)
1457 struct StreamReader<::IceGrid::DistributionDescriptor>
1460 static void read(InputStream* istr, ::IceGrid::DistributionDescriptor& v)
1477 struct StreamReader<::IceGrid::ServerInstanceDescriptor>
1480 static void read(InputStream* istr, ::IceGrid::ServerInstanceDescriptor& v)
1497 struct StreamReader<::IceGrid::TemplateDescriptor>
1500 static void read(InputStream* istr, ::IceGrid::TemplateDescriptor& v)
1517 struct StreamReader<::IceGrid::ServiceInstanceDescriptor>
1520 static void read(InputStream* istr, ::IceGrid::ServiceInstanceDescriptor& v)
1537 struct StreamReader<::IceGrid::NodeDescriptor>
1540 static void read(InputStream* istr, ::IceGrid::NodeDescriptor& v)
1557 struct StreamReader<::IceGrid::ReplicaGroupDescriptor>
1560 static void read(InputStream* istr, ::IceGrid::ReplicaGroupDescriptor& v)
1577 struct StreamReader<::IceGrid::ApplicationDescriptor>
1580 static void read(InputStream* istr, ::IceGrid::ApplicationDescriptor& v)
1597 struct StreamReader<::IceGrid::NodeUpdateDescriptor>
1600 static void read(InputStream* istr, ::IceGrid::NodeUpdateDescriptor& v)
1617 struct StreamReader<::IceGrid::ApplicationUpdateDescriptor>
1620 static void read(InputStream* istr, ::IceGrid::ApplicationUpdateDescriptor& v)
1622 istr->readAll(v.
name, v.
description, v.
distrib, v.
variables, v.
removeVariables, v.
propertySets, v.
removePropertySets, v.
replicaGroups, v.
removeReplicaGroups, v.
serverTemplates, v.
removeServerTemplates, v.
serviceTemplates, v.
removeServiceTemplates, v.
nodes, v.
removeNodes);
AdaptiveLoadBalancingPolicyPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
AdaptiveLoadBalancingPolicy(const AdaptiveLoadBalancingPolicy &)=default
Copy constructor.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
std::tuple< const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this class.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
std::string loadSample
The load sample to use for the load balancing.
AdaptiveLoadBalancingPolicy() noexcept=default
Default constructor.
The load balancing policy that returns the endpoints of the server(s) with the lowest load average.
BoxedDistributionDescriptor() noexcept=default
Default constructor.
std::tuple< const ::IceGrid::DistributionDescriptor & > ice_tuple() const
Creates a tuple with all the fields of this class.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
::IceGrid::DistributionDescriptor value
The value of the boxed distribution descriptor.
BoxedDistributionDescriptor(const BoxedDistributionDescriptor &)=default
Copy constructor.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
BoxedDistributionDescriptorPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
A "boxed" distribution descriptor.
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this class.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
std::string value
The value of the boxed string.
BoxedStringPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
BoxedString() noexcept=default
Default constructor.
BoxedString(const BoxedString &)=default
Copy constructor.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
::IceGrid::AdapterDescriptorSeq adapters
The indirect object adapters.
std::string description
A description of this descriptor.
CommunicatorDescriptorPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
::IceGrid::DbEnvDescriptorSeq dbEnvs
The database environments.
::Ice::StringSeq logs
The path of each log file.
CommunicatorDescriptor(const CommunicatorDescriptor &)=default
Copy constructor.
std::tuple< const ::IceGrid::AdapterDescriptorSeq &, const ::IceGrid::PropertySetDescriptor &, const ::IceGrid::DbEnvDescriptorSeq &, const ::Ice::StringSeq &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this class.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
CommunicatorDescriptor() noexcept=default
Default constructor.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
::IceGrid::PropertySetDescriptor propertySet
The property set.
Describes an Ice communicator.
IceBoxDescriptor() noexcept=default
Default constructor.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
::IceGrid::ServiceInstanceDescriptorSeq services
The service instances.
std::tuple< const ::IceGrid::AdapterDescriptorSeq &, const ::IceGrid::PropertySetDescriptor &, const ::IceGrid::DbEnvDescriptorSeq &, const ::Ice::StringSeq &, const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, const ::Ice::StringSeq &, const ::Ice::StringSeq &, const std::string &, const std::string &, const std::string &, const bool &, const ::IceGrid::DistributionDescriptor &, const bool &, const std::string &, const ::IceGrid::ServiceInstanceDescriptorSeq & > ice_tuple() const
Creates a tuple with all the fields of this class.
IceBoxDescriptorPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
IceBoxDescriptor(const IceBoxDescriptor &)=default
Copy constructor.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
Describes an IceBox server.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
LoadBalancingPolicy(const LoadBalancingPolicy &)=default
Copy constructor.
LoadBalancingPolicyPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
LoadBalancingPolicy() noexcept=default
Default constructor.
std::string nReplicas
The number of replicas that will be used to gather the endpoints of a replica group.
std::tuple< const std::string & > ice_tuple() const
Creates a tuple with all the fields of this class.
The base class for load balancing policies.
OrderedLoadBalancingPolicyPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
LoadBalancingPolicy() noexcept=default
Default constructor.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
OrderedLoadBalancingPolicy(const OrderedLoadBalancingPolicy &)=default
Copy constructor.
The load balancing policy that returns endpoints in order.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
RandomLoadBalancingPolicy(const RandomLoadBalancingPolicy &)=default
Copy constructor.
LoadBalancingPolicy() noexcept=default
Default constructor.
RandomLoadBalancingPolicyPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
The load balancing policy that returns endpoints in a random order.
LoadBalancingPolicy() noexcept=default
Default constructor.
RoundRobinLoadBalancingPolicy(const RoundRobinLoadBalancingPolicy &)=default
Copy constructor.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
RoundRobinLoadBalancingPolicyPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
The load balancing policy that returns endpoints using round-robin.
::IceGrid::DistributionDescriptor distrib
The distribution descriptor.
std::string exe
The path of the server executable.
std::string iceVersion
The Ice version used by this server.
bool allocatable
Specifies if the server is allocatable.
::Ice::StringSeq envs
The server environment variables.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
std::string activationTimeout
The activation timeout.
std::string deactivationTimeout
The deactivation timeout.
ServerDescriptorPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
::Ice::StringSeq options
The command line options to pass to the server executable.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
ServerDescriptor() noexcept=default
Default constructor.
bool applicationDistrib
Specifies if the server depends on the application distribution.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
std::string user
The user account used to run the server.
std::string pwd
The path to the server working directory.
std::string activation
The server activation mode. Possible values are "on-demand" and "manual".
ServerDescriptor(const ServerDescriptor &)=default
Copy constructor.
std::string id
The server ID.
std::tuple< const ::IceGrid::AdapterDescriptorSeq &, const ::IceGrid::PropertySetDescriptor &, const ::IceGrid::DbEnvDescriptorSeq &, const ::Ice::StringSeq &, const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, const ::Ice::StringSeq &, const ::Ice::StringSeq &, const std::string &, const std::string &, const std::string &, const bool &, const ::IceGrid::DistributionDescriptor &, const bool &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this class.
static const char * ice_staticId() noexcept
Gets the type ID of the associated Slice class.
ServiceDescriptor() noexcept=default
Default constructor.
const char * ice_id() const noexcept override
Gets the Slice type ID of the most-derived class supported by this object.
std::string entry
The entry point of the IceBox service.
ServiceDescriptor(const ServiceDescriptor &)=default
Copy constructor.
void ice_printFields(std::ostream &os) const override
Outputs the name and value of each field of this instance, including inherited fields,...
std::string name
The service name.
std::tuple< const ::IceGrid::AdapterDescriptorSeq &, const ::IceGrid::PropertySetDescriptor &, const ::IceGrid::DbEnvDescriptorSeq &, const ::Ice::StringSeq &, const std::string &, const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this class.
ServiceDescriptorPtr ice_clone() const
Creates a shallow polymorphic copy of this instance.
Describes an IceBox service.
Represents a byte buffer used for marshaling data using the Slice encoding.
The base class for instances of Slice-defined classes.
std::shared_ptr< LoadBalancingPolicy > LoadBalancingPolicyPtr
A shared pointer to a LoadBalancingPolicy.
std::vector< ServiceInstanceDescriptor > ServiceInstanceDescriptorSeq
A sequence of ServiceInstanceDescriptor.
std::map< std::string, std::string > StringStringDict
A mapping of string to string.
std::vector< ObjectDescriptor > ObjectDescriptorSeq
A sequence of ObjectDescriptor.
std::map< std::string, NodeDescriptor > NodeDescriptorDict
Mapping of node name to node descriptor.
std::ostream & operator<<(std::ostream &os, ServerState value)
Outputs the enumerator name or underlying value of a ServerState to a stream.
std::vector< ServerInstanceDescriptor > ServerInstanceDescriptorSeq
A sequence of ServerInstanceDescriptor.
std::vector< ReplicaGroupDescriptor > ReplicaGroupDescriptorSeq
A sequence of ReplicaGroupDescriptor.
std::shared_ptr< RoundRobinLoadBalancingPolicy > RoundRobinLoadBalancingPolicyPtr
A shared pointer to a RoundRobinLoadBalancingPolicy.
std::shared_ptr< IceBoxDescriptor > IceBoxDescriptorPtr
A shared pointer to an IceBoxDescriptor.
std::shared_ptr< AdaptiveLoadBalancingPolicy > AdaptiveLoadBalancingPolicyPtr
A shared pointer to an AdaptiveLoadBalancingPolicy.
std::map< std::string, TemplateDescriptor > TemplateDescriptorDict
A mapping of template identifier to template descriptor.
std::shared_ptr< ServiceDescriptor > ServiceDescriptorPtr
A shared pointer to a ServiceDescriptor.
std::vector< ServerDescriptorPtr > ServerDescriptorSeq
A sequence of ServerDescriptor.
std::vector< ServiceDescriptorPtr > ServiceDescriptorSeq
A sequence of ServiceDescriptor.
std::shared_ptr< ServerDescriptor > ServerDescriptorPtr
A shared pointer to a ServerDescriptor.
std::vector< NodeUpdateDescriptor > NodeUpdateDescriptorSeq
A sequence of NodeUpdateDescriptor.
std::vector< ApplicationDescriptor > ApplicationDescriptorSeq
A sequence of ApplicationDescriptor.
std::vector< PropertyDescriptor > PropertyDescriptorSeq
A sequence of PropertyDescriptor.
std::shared_ptr< CommunicatorDescriptor > CommunicatorDescriptorPtr
A shared pointer to a CommunicatorDescriptor.
std::shared_ptr< OrderedLoadBalancingPolicy > OrderedLoadBalancingPolicyPtr
A shared pointer to an OrderedLoadBalancingPolicy.
std::vector< AdapterDescriptor > AdapterDescriptorSeq
A sequence of AdapterDescriptor.
std::shared_ptr< RandomLoadBalancingPolicy > RandomLoadBalancingPolicyPtr
A shared pointer to a RandomLoadBalancingPolicy.
std::shared_ptr< BoxedString > BoxedStringPtr
A shared pointer to a BoxedString.
std::map< std::string, PropertySetDescriptor > PropertySetDescriptorDict
A mapping of property set name to property set descriptor.
Deploy and manage Ice servers.
int StreamHelperCategory
The stream helper category allows to select a StreamHelper specialization for a specific category of ...
std::vector< std::string > StringSeq
A sequence of strings.
constexpr StreamHelperCategory StreamHelperCategoryStruct
Generated struct types.
std::shared_ptr< Value > ValuePtr
A shared pointer to a Value.
bool serverLifetime
When true, the lifetime of this object adapter is the same of the server lifetime.
::IceGrid::ObjectDescriptorSeq allocatables
The descriptors of allocatable objects.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::string description
A description of this object adapter.
std::tuple< const std::string &, const std::string &, const std::string &, const std::string &, const std::string &, const bool &, const bool &, const ::IceGrid::ObjectDescriptorSeq &, const ::IceGrid::ObjectDescriptorSeq & > ice_tuple() const
Creates a tuple with all the fields of this struct.
::IceGrid::ObjectDescriptorSeq objects
The descriptors of well-known objects.
std::string id
The adapter ID.
bool registerProcess
When true, the object adapter registers a process object.
std::string replicaGroupId
The replica group ID. It's empty when the adapter is not part of a replica group.
std::string priority
The adapter priority. Only relevant when the adapter is in a replica group.
std::string name
The object adapter name.
Describes an indirect object adapter.
::IceGrid::DistributionDescriptor distrib
The application distribution.
std::string description
The description of this application.
::IceGrid::TemplateDescriptorDict serviceTemplates
The service templates.
::IceGrid::PropertySetDescriptorDict propertySets
Property set descriptors.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
::IceGrid::TemplateDescriptorDict serverTemplates
The server templates.
std::tuple< const std::string &, const ::IceGrid::StringStringDict &, const ::IceGrid::ReplicaGroupDescriptorSeq &, const ::IceGrid::TemplateDescriptorDict &, const ::IceGrid::TemplateDescriptorDict &, const ::IceGrid::NodeDescriptorDict &, const ::IceGrid::DistributionDescriptor &, const std::string &, const ::IceGrid::PropertySetDescriptorDict & > ice_tuple() const
Creates a tuple with all the fields of this struct.
std::string name
The application name.
::IceGrid::NodeDescriptorDict nodes
The node descriptors.
::IceGrid::ReplicaGroupDescriptorSeq replicaGroups
The replica groups.
::IceGrid::StringStringDict variables
The variables defined in the application descriptor.
Describes an application.
::Ice::StringSeq removePropertySets
The property sets to remove.
::IceGrid::TemplateDescriptorDict serviceTemplates
The service templates to update.
::IceGrid::BoxedStringPtr description
The updated description (or null if the description wasn't updated).
::IceGrid::TemplateDescriptorDict serverTemplates
The server templates to update.
::IceGrid::PropertySetDescriptorDict propertySets
The property sets to update.
std::string name
The name of the application to update.
::Ice::StringSeq removeServiceTemplates
The IDs of the service template to remove.
::IceGrid::StringStringDict variables
The variables to update.
::IceGrid::ReplicaGroupDescriptorSeq replicaGroups
The replica groups to update.
::IceGrid::NodeUpdateDescriptorSeq nodes
The application nodes to update.
std::tuple< const std::string &, const ::IceGrid::BoxedStringPtr &, const ::IceGrid::BoxedDistributionDescriptorPtr &, const ::IceGrid::StringStringDict &, const ::Ice::StringSeq &, const ::IceGrid::PropertySetDescriptorDict &, const ::Ice::StringSeq &, const ::IceGrid::ReplicaGroupDescriptorSeq &, const ::Ice::StringSeq &, const ::IceGrid::TemplateDescriptorDict &, const ::Ice::StringSeq &, const ::IceGrid::TemplateDescriptorDict &, const ::Ice::StringSeq &, const ::IceGrid::NodeUpdateDescriptorSeq &, const ::Ice::StringSeq & > ice_tuple() const
Creates a tuple with all the fields of this struct.
::Ice::StringSeq removeReplicaGroups
The replica groups to remove.
::IceGrid::BoxedDistributionDescriptorPtr distrib
The updated distribution application descriptor.
::Ice::StringSeq removeServerTemplates
The IDs of the server template to remove.
::Ice::StringSeq removeNodes
The nodes to remove.
::Ice::StringSeq removeVariables
The variables to remove.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
An application update descriptor to describe the updates to apply to a deployed application.
std::tuple< const std::string &, const std::string &, const std::string &, const ::IceGrid::PropertyDescriptorSeq & > ice_tuple() const
Creates a tuple with all the fields of this struct.
std::string name
The name of the database environment.
std::string description
The description of this database environment.
std::string dbHome
The home of the database environment.
::IceGrid::PropertyDescriptorSeq properties
The configuration properties of the database environment.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
A Freeze database environment descriptor (deprecated, no longer used).
std::string icepatch
The proxy of the IcePatch2 server.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
::Ice::StringSeq directories
The source directories.
std::tuple< const std::string &, const ::Ice::StringSeq & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Describes a distribution.
::IceGrid::StringStringDict variables
The variables defined for the node.
std::string description
The description of this node.
std::tuple< const ::IceGrid::StringStringDict &, const ::IceGrid::ServerInstanceDescriptorSeq &, const ::IceGrid::ServerDescriptorSeq &, const std::string &, const std::string &, const ::IceGrid::PropertySetDescriptorDict & > ice_tuple() const
Creates a tuple with all the fields of this struct.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::string loadFactor
Load factor of the node.
::IceGrid::PropertySetDescriptorDict propertySets
Property set descriptors.
::IceGrid::ServerDescriptorSeq servers
Servers that are not template instances.
::IceGrid::ServerInstanceDescriptorSeq serverInstances
The server instances (template instances).
Describes an IceGrid node.
::IceGrid::StringStringDict variables
The variables to update.
std::tuple< const std::string &, const ::IceGrid::BoxedStringPtr &, const ::IceGrid::StringStringDict &, const ::Ice::StringSeq &, const ::IceGrid::PropertySetDescriptorDict &, const ::Ice::StringSeq &, const ::IceGrid::ServerInstanceDescriptorSeq &, const ::IceGrid::ServerDescriptorSeq &, const ::Ice::StringSeq &, const ::IceGrid::BoxedStringPtr & > ice_tuple() const
Creates a tuple with all the fields of this struct.
::IceGrid::PropertySetDescriptorDict propertySets
The property sets to update.
::IceGrid::BoxedStringPtr loadFactor
The updated load factor of the node (or null if the load factor was not updated).
::Ice::StringSeq removeVariables
The variables to remove.
std::string name
The name of the node to update.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
::IceGrid::BoxedStringPtr description
The updated description (or null if the description wasn't updated.)
::Ice::StringSeq removePropertySets
The property sets to remove.
::IceGrid::ServerInstanceDescriptorSeq serverInstances
The server instances to update.
::Ice::StringSeq removeServers
The IDs of the servers to remove.
::IceGrid::ServerDescriptorSeq servers
The servers which are not template instances to update.
Describes the updates to apply to a node in a deployed application.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::string proxyOptions
The proxy options to use when creating a proxy for this well-known object.
std::string type
The object type.
std::tuple< const ::Ice::Identity &, const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
::Ice::Identity id
The identity of the object.
Describes a well-known Ice object.
std::string name
The name of the property.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
std::string value
The value of the property.
Describes an Ice property.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
::Ice::StringSeq references
References to named property sets.
std::tuple< const ::Ice::StringSeq &, const ::IceGrid::PropertyDescriptorSeq & > ice_tuple() const
Creates a tuple with all the fields of this struct.
::IceGrid::PropertyDescriptorSeq properties
The property set properties.
A property set descriptor.
::IceGrid::LoadBalancingPolicyPtr loadBalancing
The load balancing policy.
::IceGrid::ObjectDescriptorSeq objects
The descriptors for the well-known objects.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::string id
The replica group ID.
std::tuple< const std::string &, const ::IceGrid::LoadBalancingPolicyPtr &, const std::string &, const ::IceGrid::ObjectDescriptorSeq &, const std::string &, const std::string & > ice_tuple() const
Creates a tuple with all the fields of this struct.
std::string filter
The filter to use for this replica group.
std::string proxyOptions
Default options for proxies created for the replica group.
std::string description
The description of this replica group.
Describes a replica group.
::IceGrid::PropertySetDescriptor propertySet
The property set.
::IceGrid::StringStringDict parameterValues
The template parameter values.
std::string templateName
The template used by this instance. It's never empty.
std::tuple< const std::string &, const ::IceGrid::StringStringDict &, const ::IceGrid::PropertySetDescriptor &, const ::IceGrid::PropertySetDescriptorDict & > ice_tuple() const
Creates a tuple with all the fields of this struct.
::IceGrid::PropertySetDescriptorDict servicePropertySets
The services property sets.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
Describes a template instantiation that creates a server.
std::string templateName
The template used by this instance. It's empty when this instance does not use a template.
::IceGrid::ServiceDescriptorPtr descriptor
The service definition if the instance isn't a template instance (i.e.: if the template attribute is ...
::IceGrid::PropertySetDescriptor propertySet
The property set.
std::tuple< const std::string &, const ::IceGrid::StringStringDict &, const ::IceGrid::ServiceDescriptorPtr &, const ::IceGrid::PropertySetDescriptor & > ice_tuple() const
Creates a tuple with all the fields of this struct.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
::IceGrid::StringStringDict parameterValues
The template parameter values.
Describes an IceBox service.
::IceGrid::StringStringDict parameterDefaults
The parameters' default values.
::IceGrid::CommunicatorDescriptorPtr descriptor
The communicator.
::Ice::StringSeq parameters
The parameters required to instantiate the template.
void ice_printFields(std::ostream &os) const
Outputs the name and value of each field of this instance to the stream.
std::tuple< const ::IceGrid::CommunicatorDescriptorPtr &, const ::Ice::StringSeq &, const ::IceGrid::StringStringDict & > ice_tuple() const
Creates a tuple with all the fields of this struct.
Describes a template for a server or an IceBox service.
Represents the identity of an Ice object.
static constexpr bool fixedLength
Indicates if the type is always encoded on a fixed number of bytes.
static constexpr int minWireSize
The minimum number of bytes needed to marshal this type.
static constexpr StreamHelperCategory helper
The category trait, used for selecting the appropriate StreamHelper.
Provides traits for a type that can be marshaled or unmarshaled to/from a stream of bytes using the S...