/usr/share/Ice-3.6.3/slice/IceGrid/PluginFacade.ice is in zeroc-ice-slice 3.6.3-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 | // **********************************************************************
//
// Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************
#pragma once
[["cpp:header-ext:h", "objc:header-dir:objc"]]
[["cpp:include:IceGrid/Config.h"]]
#include <Ice/BuiltinSequences.ice>
#include <Ice/Current.ice>
#include <IceGrid/Admin.ice>
["objc:prefix:ICEGRID"]
module IceGrid
{
/**
*
* The ReplicaGroupFilter is used by IceGrid to filter adapters
* returned to the client when it resolves a filtered replica group.
*
* IceGrid provides the list of available adapters. The implementation
* of this method can use the provided context and connection to
* filter and return the filtered set of adapters.
*
**/
local interface ReplicaGroupFilter
{
/**
*
* Filter the the given set of adapters.
*
* @param replicaGroupId The replica group ID.
*
* @param adapterIds The adpater IDs to filter.
*
* @param con The connection from the Ice client which is
* resolving the replica group endpoints.
*
* @param ctx The context from the Ice client which is resolving
* the replica group endpoints.
*
* @return The filtered adapter IDs.
*
**/
Ice::StringSeq filter(string replicaGroupId, Ice::StringSeq adapterIds, Ice::Connection con, Ice::Context ctx);
};
/**
*
* The TypeFilter is used by IceGrid to filter well-known proxies
* returned to the client when it searches a well-known object by
* type.
*
* IceGrid provides the list of available proxies. The implementation
* of this method can use the provided context and connection to
* filter and return the filtered set of proxies.
*
**/
local interface TypeFilter
{
/**
*
* Filter the the given set of proxies.
*
* @param type The type.
*
* @param proxies The proxies to filter.
*
* @param con The connection from the Ice client which is
* looking up well-known objects by type.
*
* @param ctx The context from the Ice client which is looking up
* well-known objects by type.
*
* @return The filtered proxies.
*
**/
Ice::ObjectProxySeq filter(string type, Ice::ObjectProxySeq proxies, Ice::Connection con, Ice::Context ctx);
};
/**
*
* The RegistryPluginFacade is implemented by IceGrid and can be used
* by plugins and filter implementations to retrieve information from
* IceGrid about the well-known objects or adapters. It's also used to
* register/unregister replica group and type filters.
*
**/
local interface RegistryPluginFacade
{
/**
*
* Get an application descriptor.
*
* @param name The application name.
*
* @return The application descriptor.
*
* @throws ApplicationNotExistException Raised if the application
* doesn't exist.
*
**/
["nonmutating", "cpp:const"] idempotent ApplicationInfo getApplicationInfo(string name)
throws ApplicationNotExistException;
/**
*
* Get the server information for the server with the given id.
*
* @param id The server id.
*
* @throws ServerNotExistException Raised if the server doesn't exist.
*
* @return The server information.
*
**/
["nonmutating", "cpp:const"] idempotent ServerInfo getServerInfo(string id)
throws ServerNotExistException;
/**
*
* Get the ID of the server to which the given adapter belongs.
*
* @param adapterId The adapter ID.
*
* @return The server ID or the empty string if the given
* identifier is not associated to an object adapter defined with
* an application descriptor.
*
* @throws AdapterNotExistException Raised if the adapter doesn't
* exist.
*
**/
["nonmutating", "cpp:const"] idempotent string getAdapterServer(string adapterId)
throws AdapterNotExistException;
/**
*
* Get the name of the application to which the given adapter belongs.
*
* @param adapterId The adapter ID.
*
* @return The application name or the empty string if the given
* identifier is not associated to a replica group or object
* adapter defined with an application descriptor.
*
* @throws AdapterNotExistException Raised if the adapter doesn't
* exist.
*
**/
["nonmutating", "cpp:const"] idempotent string getAdapterApplication(string adapterId)
throws AdapterNotExistException;
/**
*
* Get the name of the node to which the given adapter belongs.
*
* @param adapterId The adapter ID.
*
* @return The node name or the empty string if the given
* identifier is not associated to an object adapter defined with
* an application descriptor.
*
* @throws AdapterNotExistException Raised if the adapter doesn't
* exist.
*
**/
["nonmutating", "cpp:const"] idempotent string getAdapterNode(string adapterId)
throws AdapterNotExistException;
/**
*
* Get the adapter information for the replica group or adapter
* with the given id.
*
* @param id The adapter id.
*
* @return A sequence of adapter information structures. If the
* given id refers to an adapter, this sequence will contain only
* one element. If the given id refers to a replica group, the
* sequence will contain the adapter information of each member of
* the replica group.
*
* @throws AdapterNotExistException Raised if the adapter or
* replica group doesn't exist.
*
**/
["nonmutating", "cpp:const"] idempotent AdapterInfoSeq getAdapterInfo(string id)
throws AdapterNotExistException;
/**
*
* Get the object info for the object with the given identity.
*
* @param id The identity of the object.
*
* @return The object info.
*
* @throws ObjectNotRegisteredException Raised if the object isn't
* registered with the registry.
*
**/
["nonmutating", "cpp:const"] idempotent ObjectInfo getObjectInfo(Ice::Identity id)
throws ObjectNotRegisteredException;
/**
*
* Get the node information for the node with the given name.
*
* @param name The node name.
*
* @return The node information.
*
* @throws NodeNotExistException Raised if the node doesn't exist.
*
* @throws NodeUnreachableException Raised if the node could not be
* reached.
*
**/
["nonmutating", "cpp:const"] idempotent NodeInfo getNodeInfo(string name)
throws NodeNotExistException, NodeUnreachableException;
/**
*
* Get the load averages of the node.
*
* @param name The node name.
*
* @return The node load information.
*
* @throws NodeNotExistException Raised if the node doesn't exist.
*
* @throws NodeUnreachableException Raised if the node could not be
* reached.
*
**/
["nonmutating", "cpp:const"] idempotent LoadInfo getNodeLoad(string name)
throws NodeNotExistException, NodeUnreachableException;
/**
*
* Get the property value for the given property and adapter. The
* property is looked up in the server or service descriptor where
* the adapter is defined.
*
* @param adapterId The adapter ID
*
* @param name The name of the property.
*
* @return The property value.
*
**/
["nonmutating", "cpp:const"] idempotent string getPropertyForAdapter(string adapterId, string name)
throws AdapterNotExistException;
/**
*
* Add a replica group filter.
*
* @param id The identifier of the filter. This identifier must
* match the value of the "filter" attribute specified in the
* replica group descriptor. To filter dynamically registered
* replica groups, you should use the empty filter id.
*
* @param filter The filter implementation.
*
**/
void addReplicaGroupFilter(string id, ReplicaGroupFilter filter);
/**
*
* Remove a replica group filter.
*
* @param id The identifier of the filter.
*
* @param filter The filter implementation.
*
* @return True of the filter was removed, false otherwise.
*
**/
bool removeReplicaGroupFilter(string id, ReplicaGroupFilter filter);
/**
*
* Add a type filter.
*
* @param type The type to register this filter with.
*
* @param filter The filter implementation.
*
**/
void addTypeFilter(string type, TypeFilter filter);
/**
*
* Remove a type filter.
*
* @param type The type to register this filter with.
*
* @param filter The filter implementation.
*
* @return True of the filter was removed, false otherwise.
*
**/
bool removeTypeFilter(string type, TypeFilter filter);
};
};
|