Class: Sumac
- Inherits:
-
Object
show all
- Includes:
- Emittable
- Defined in:
- lib/sumac.rb,
lib/sumac/closer.rb,
lib/sumac/adapter.rb,
lib/sumac/message.rb,
lib/sumac/forgoten.rb,
lib/sumac/shutdown.rb,
lib/sumac/handshake.rb,
lib/sumac/messenger.rb,
lib/sumac/reference.rb,
lib/sumac/scheduler.rb,
lib/sumac/connection.rb,
lib/sumac/worker_pool.rb,
lib/sumac/closed_error.rb,
lib/sumac/id_allocator.rb,
lib/sumac/native_error.rb,
lib/sumac/remote_entry.rb,
lib/sumac/message_error.rb,
lib/sumac/remote_object.rb,
lib/sumac/adapter/closed.rb,
lib/sumac/argument_error.rb,
lib/sumac/call_processor.rb,
lib/sumac/exposed_object.rb,
lib/sumac/message/object.rb,
lib/sumac/call_dispatcher.rb,
lib/sumac/local_reference.rb,
lib/sumac/no_method_error.rb,
lib/sumac/local_references.rb,
lib/sumac/message/exchange.rb,
lib/sumac/remote_reference.rb,
lib/sumac/remote_references.rb,
lib/sumac/stale_object_error.rb,
lib/sumac/message/exchange/id.rb,
lib/sumac/message/object/base.rb,
lib/sumac/message/object/null.rb,
lib/sumac/remote_object_child.rb,
lib/sumac/exposed_object_child.rb,
lib/sumac/message/object/array.rb,
lib/sumac/message/object/float.rb,
lib/sumac/message/exchange/base.rb,
lib/sumac/message/object/string.rb,
lib/sumac/message/object/boolean.rb,
lib/sumac/message/object/exposed.rb,
lib/sumac/message/object/integer.rb,
lib/sumac/message/object/exception.rb,
lib/sumac/unexposable_object_error.rb,
lib/sumac/message/object/hash_table.rb,
lib/sumac/message/object/exposed_child.rb,
lib/sumac/message/exchange/call_request.rb,
lib/sumac/message/exchange/notification.rb,
lib/sumac/message/exchange/call_response.rb,
lib/sumac/message/object/native_exception.rb,
lib/sumac/message/exchange/forget_notification.rb,
lib/sumac/message/exchange/shutdown_notification.rb,
lib/sumac/message/exchange/compatibility_notification.rb,
lib/sumac/message/exchange/initialization_notification.rb
Defined Under Namespace
Modules: Adapter, ExposedObject, ExposedObjectChild
Classes: ArgumentError, CallDispatcher, CallProcessor, ClosedError, Closer, Connection, Forgoten, Handshake, IDAllocator, LocalReference, LocalReferences, Message, MessageError, Messenger, NativeError, NoMethodError, Reference, RemoteEntry, RemoteObject, RemoteObjectChild, RemoteReference, RemoteReferences, Scheduler, Shutdown, StaleObjectError, UnexposableObjectError, WorkerPool
Instance Method Summary
collapse
Constructor Details
#initialize(duck_types: {}, entry: nil, messenger:, workers: 1) ⇒ Sumac
Returns a new instance of Sumac.
69
70
71
72
|
# File 'lib/sumac.rb', line 69
def initialize(duck_types: {}, entry: nil, messenger: , workers: 1)
@connection = Connection.new(self, duck_types: duck_types, entry: entry, messenger: messenger, workers: workers)
@connection.scheduler.run
end
|
Instance Method Details
74
75
76
77
|
# File 'lib/sumac.rb', line 74
def close
@connection.closer.close
nil
end
|
79
80
81
|
# File 'lib/sumac.rb', line 79
def entry
@connection.remote_entry.get
end
|
83
84
85
|
# File 'lib/sumac.rb', line 83
def join
@connection.closer.join
end
|