Class: AbstractHandler
- Inherits:
-
Object
show all
- Defined in:
- lib/hypertube-ruby-sdk/core/handler/abstract_handler.rb
Direct Known Subclasses
AddEventListenerHandler, ArrayGetItemHandler, ArrayGetRankHandler, ArrayGetSizeHandler, ArrayHandler, ArrayReferenceHandler, ArraySetItemHandler, AsDtoHandler, AsKwargsHandler, AsOutHandler, AsRefHandler, CastingHandler, ConvertTypeHandler, CreateClassInstanceHandler, CreateNullHandler, DestructReferenceHandler, DtoPropertyHandler, EnableNamespaceHandler, EnableTypeHandler, ExceptionHandler, GenerateLibHandler, GetAsyncOperationResultHandler, GetEnumItemHandler, GetEnumNameHandler, GetEnumValueHandler, GetGlobalFieldHandler, GetInstanceFieldHandler, GetInstanceMethodAsDelegateHandler, GetModuleHandler, GetRefValueHandler, GetResultTypeHandler, GetStaticFieldHandler, GetStaticMethodAsDelegateHandler, GetTypeHandler, HeartbeatHandler, InvokeDelegateHandler, InvokeGenericMethodHandler, InvokeGenericStaticMethodHandler, InvokeGlobalFunctionHandler, InvokeInstanceMethodHandler, InvokeStaticMethodHandler, LoadLibraryHandler, OptimizeHandler, PassByValueHandler, PassDelegateHandler, PluginWrapperHandler, ProjectResultAsDtoHandler, RegisterForUpdateHandler, ResolveInstanceHandler, RetrieveArrayHandler, SetInstanceFieldHandler, SetStaticFieldHandler, ValueForUpdateHandler, ValueHandler
Instance Method Summary
collapse
Instance Method Details
#handle_command(command) ⇒ Object
12
13
14
15
|
# File 'lib/hypertube-ruby-sdk/core/handler/abstract_handler.rb', line 12
def handle_command(command)
iterate(command) unless command.command_type == CommandType::OPTIMIZE
process(command)
end
|
#process(_command) ⇒ Object
8
9
10
|
# File 'lib/hypertube-ruby-sdk/core/handler/abstract_handler.rb', line 8
def process(_command)
raise 'process is not implemented'
end
|
#validate(command, required_parameters_count, caller_type_name) ⇒ Object
17
18
19
|
# File 'lib/hypertube-ruby-sdk/core/handler/abstract_handler.rb', line 17
def validate(command, required_parameters_count, caller_type_name)
raise ArgumentError, "#{caller_type_name} parameters mismatch" if command.payload.length < required_parameters_count
end
|