indexing description: "[ Used for configuring an EGS_EVENT_SESSION. it contains a set of configuration parameters that influence the way event listeners are registered with the space
and how event notifications are processed. ]" legal: "See notice at end of class." status: "See notice at end of class." date: "$Date$" revision: "$Revision$" class EGS_EVENT_SESSION_CONFIG inherit EGS_EXTERNAL_CPP_OBJECT create make feature -- Constants unicast: INTEGER = 0 multiplex: INTEGER = 1 multicast: INTEGER = 2 feature -- Initialisation make (space_proxy: EGS_SPACE_PROXY) is -- Creates the configuration according to the space. -- -- @param space the associated space require space_proxy_not_void: space_proxy /= Void do make_from_external (cpp_create (space_proxy.object_ptr, default_pointer)) end make_with_schema (space_proxy: EGS_SPACE_PROXY; schema: STRING) is -- Creates the configuration according to the space and schema -- -- @param space the associated space -- @param schema require space_proxy_not_void: space_proxy /= Void valid_schema: schema /= Void and then not schema.is_empty local c_str: C_STRING do create c_str.make (schema) make_from_external (cpp_create (space_proxy.object_ptr, c_str.item)) end feature -- Queries communication_type: INTEGER is -- The Communication type that is in use with this config. do Result := cpp_communication_type (object_ptr) end is_fifo: BOOLEAN is -- Checks if the order that is in use with this config is fifo. do Result := cpp_is_fifo (object_ptr) end is_batching: BOOLEAN -- Checks if using batch notifications. do Result := cpp_is_batching (object_ptr) end batch_size: INTEGER is -- number of notifications in a batch. do Result := cpp_batch_size (object_ptr) end batch_time: INTEGER_64 is -- The maximum elapsed time between two batch notifications do Result := cpp_batch_time (object_ptr) end is_auto_renew: BOOLEAN is -- do Result := cpp_is_auto_renew (object_ptr) end is_trigger_notify_template: BOOLEAN is -- Should notify template be triggered on replication event. do Result := cpp_is_trigger_notify_template (object_ptr) end is_replicate_notify_template: BOOLEAN is -- Should this template be replicated. do Result := cpp_is_replicate_notify_template (object_ptr) end renew_duration: INTEGER_64 is -- the renew Duration. do Result := cpp_renew_duration (object_ptr) end renew_expiration: INTEGER_64 is -- the renew Expiration. do Result := cpp_renew_expiration (object_ptr) end renew_rtt: INTEGER_64 is -- the renew RTT. do Result := cpp_renew_rtt (object_ptr) end feature set_communication_type (a_communication_type: INTEGER) is -- Set the Communication type to be used with this config. -- -- @param a_communication_type - unicast, multiplex, multicast. do cpp_set_communication_type (object_ptr, a_communication_type) end set_fifo (fifo: BOOLEAN) is -- Set fifo order for the notifications. -- -- @param fifo - true when using fifo order. do cpp_set_fifo (object_ptr, fifo) end set_batch (size: INTEGER; time: INTEGER_64) is -- set the notifications to come in batches of size -- notification can not be delay more then time ms. -- -- @param size - amount of notification in batch. -- @param time - maximum time to delay notification in not full batch. do cpp_set_batch (object_ptr, size, time) end set_trigger_notify_template (trigger_notify_template: BOOLEAN) is -- do cpp_set_trigger_notify_template (object_ptr, trigger_notify_template) end set_replicate_notify_template (replicate_notify_template: BOOLEAN) is -- do cpp_set_replicate_notify_template (object_ptr, replicate_notify_template) end feature {NONE} -- externals cpp_communication_type (obj_ptr: POINTER): INTEGER is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->getComType()" end cpp_is_fifo (obj_ptr: POINTER): BOOLEAN is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->isFifo()" end cpp_is_batching (obj_ptr: POINTER): BOOLEAN is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->isBatching()" end cpp_batch_size (obj_ptr: POINTER): INTEGER is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->getBatchSize()" end cpp_batch_time (obj_ptr: POINTER): INTEGER_64 is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->getBatchTime()" end cpp_is_auto_renew (obj_ptr: POINTER): BOOLEAN is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->isAutoRenew()" end cpp_is_trigger_notify_template (obj_ptr: POINTER): BOOLEAN is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->isReplicateNotifyTemplate()" end cpp_is_replicate_notify_template (obj_ptr: POINTER): BOOLEAN is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->isReplicateNotifyTemplate()" end cpp_renew_duration (obj_ptr: POINTER): INTEGER_64 is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->getRenewDuration()" end cpp_renew_expiration (obj_ptr: POINTER): INTEGER_64 is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->getRenewExpiration()" end cpp_renew_rtt (obj_ptr: POINTER): INTEGER_64 is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->getRenewExpiration()" end cpp_set_communication_type (obj_ptr: POINTER; a_communication_type: INTEGER) is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->setComType($a_communication_type)" end cpp_set_fifo (obj_ptr: POINTER; fifo: BOOLEAN) is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->setFifo($fifo)" end cpp_set_batch (obj_ptr: POINTER; size: INTEGER; time: INTEGER_64) is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->setBatch($size, $time)" end cpp_set_trigger_notify_template (obj_ptr: POINTER; trigger_notify_template: BOOLEAN) is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->setTriggerNotifyTemplate($trigger_notify_template)" end cpp_set_replicate_notify_template (obj_ptr: POINTER; replicate_notify_template: BOOLEAN) is require obj_ptr_not_null: obj_ptr /= default_pointer external "C++ inline use " alias "(*((OpenSpaces::EventSessionConfigPtr*)$obj_ptr))->setReplicateNotifyTemplate($replicate_notify_template)" end cpp_create (space_ptr: POINTER; schema: POINTER): POINTER is require space_ptr_not_null: space_ptr /= default_pointer external "C++ inline use " alias "new OpenSpaces::EventSessionConfigPtr(OpenSpaces::EventSessionConfig::CreateSessionConfig(*((OpenSpaces::SpaceProxyPtr*)$space_ptr),(const char*) $schema))" end cpp_delete (obj_ptr: POINTER) is external "C++ inline use " alias "delete ((OpenSpaces::EventSessionConfigPtr*)$obj_ptr)" end indexing library: "egigs-cpp: Library for accessing the GigaSpaces platform, POCO library based implementation." copyright: "Copyright (c) 2008, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 356 Storke Road, Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end