grpc-orin3-provider 0.1.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +28 -1
- data/README.md +18 -21
- data/Rakefile +42 -0
- data/gen/Design.ORiN3.Common/V1/orin3_common_pb.rb +23 -0
- data/gen/Design.ORiN3.Common/V1/orin3_common_remote_engine_pb.rb +25 -0
- data/gen/Design.ORiN3.Provider/V1/orin3_object_type_pb.rb +23 -0
- data/gen/Design.ORiN3.Provider/V1/orin3_value_type_pb.rb +23 -0
- data/gen/Message.ORiN3.Provider/V1/orin3_base_object_pb.rb +39 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3baseobject_services_pb.rb → orin3_base_object_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_child_creator_pb.rb +39 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3childcreator_services_pb.rb → orin3_child_creator_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_child_pb.rb +28 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3child_services_pb.rb → orin3_child_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_common_type_pb.rb +79 -0
- data/gen/Message.ORiN3.Provider/V1/orin3_controller_creator_pb.rb +28 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3controllercreator_services_pb.rb → orin3_controller_creator_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_executable_pb.rb +28 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3executable_services_pb.rb → orin3_executable_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_file_pb.rb +41 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3file_services_pb.rb → orin3_file_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_job_pb.rb +32 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3job_services_pb.rb → orin3_job_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_parent_pb.rb +31 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3parent_services_pb.rb → orin3_parent_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_resource_opener_pb.rb +30 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3resourceopener_services_pb.rb → orin3_resource_opener_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_root_object_pb.rb +44 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3rootobject_services_pb.rb → orin3_root_object_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_stream_pb.rb +28 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3stream_services_pb.rb → orin3_stream_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.Provider/V1/orin3_variable_pb.rb +31 -0
- data/gen/Message.ORiN3.Provider/V1/{orin3variable_services_pb.rb → orin3_variable_services_pb.rb} +3 -3
- data/gen/Message.ORiN3.RemoteEngine/V1/orin3_remote_engine_pb.rb +40 -0
- data/gen/Message.ORiN3.RemoteEngine/V1/orin3_remote_engine_services_pb.rb +32 -0
- data/lib/grpc/client/orin3/message_client_error.rb +23 -0
- data/lib/grpc/client/orin3/provider/orin3_base_object.rb +145 -0
- data/lib/grpc/client/orin3/provider/orin3_child_creator.rb +104 -0
- data/lib/grpc/client/orin3/provider/orin3_controller.rb +68 -0
- data/lib/grpc/client/orin3/provider/orin3_file.rb +146 -0
- data/lib/grpc/client/orin3/provider/orin3_job.rb +86 -0
- data/lib/grpc/client/orin3/provider/orin3_module.rb +30 -0
- data/lib/grpc/client/orin3/provider/orin3_resource_opener.rb +50 -0
- data/lib/grpc/client/orin3/provider/orin3_root_object.rb +108 -0
- data/lib/grpc/client/orin3/provider/orin3_stream.rb +48 -0
- data/lib/grpc/client/orin3/provider/orin3_variable.rb +500 -0
- data/lib/grpc/client/orin3/remoteengine/orin3_remote_engine.rb +158 -0
- data/lib/grpc/orin3/provider/date_time_converter.rb +25 -0
- data/lib/grpc/orin3/provider/orin3_binary_converter.rb +686 -0
- data/lib/grpc/orin3/provider/version.rb +1 -1
- data/lib/grpc/orin3/provider.rb +160 -99
- data/testsemiauto/test_with_mock_provider.rb +908 -0
- data/testsemiauto/test_with_test_provider.rb +200 -0
- data/testsemiauto/testdata/file.txt +1 -0
- metadata +51 -28
- data/gen/Message.ORiN3.Common/V1/orin3common_pb.rb +0 -77
- data/gen/Message.ORiN3.Provider/V1/orin3baseobject_pb.rb +0 -38
- data/gen/Message.ORiN3.Provider/V1/orin3child_pb.rb +0 -28
- data/gen/Message.ORiN3.Provider/V1/orin3childcreator_pb.rb +0 -38
- data/gen/Message.ORiN3.Provider/V1/orin3controllercreator_pb.rb +0 -28
- data/gen/Message.ORiN3.Provider/V1/orin3executable_pb.rb +0 -28
- data/gen/Message.ORiN3.Provider/V1/orin3file_pb.rb +0 -41
- data/gen/Message.ORiN3.Provider/V1/orin3job_pb.rb +0 -32
- data/gen/Message.ORiN3.Provider/V1/orin3parent_pb.rb +0 -31
- data/gen/Message.ORiN3.Provider/V1/orin3resourceopener_pb.rb +0 -30
- data/gen/Message.ORiN3.Provider/V1/orin3rootobject_pb.rb +0 -44
- data/gen/Message.ORiN3.Provider/V1/orin3stream_pb.rb +0 -28
- data/gen/Message.ORiN3.Provider/V1/orin3variable_pb.rb +0 -30
@@ -0,0 +1,145 @@
|
|
1
|
+
require_relative '../../../../../gen/Design.ORiN3.Common/V1/orin3_common_pb'
|
2
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_base_object_pb'
|
3
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_base_object_services_pb'
|
4
|
+
require_relative '../../../../grpc/orin3/provider/orin3_binary_converter'
|
5
|
+
|
6
|
+
module O3P
|
7
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
8
|
+
end
|
9
|
+
|
10
|
+
module O3
|
11
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
12
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::BaseObject
|
13
|
+
end
|
14
|
+
|
15
|
+
module Grpc
|
16
|
+
module Client
|
17
|
+
module ORiN3
|
18
|
+
module Provider
|
19
|
+
class ORiN3BaseObject
|
20
|
+
attr_reader :orin3_object_type, :created_datetime, :name, :type_name, :option
|
21
|
+
|
22
|
+
def initialize(channel, internal_id)
|
23
|
+
begin
|
24
|
+
@channel = channel
|
25
|
+
@internal_id = internal_id
|
26
|
+
|
27
|
+
sut = O3::BaseObjectService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
28
|
+
request = O3::GetObjectInfoRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
29
|
+
response = sut.get_object_info(request)
|
30
|
+
if (response.common.result_code != :SUCCEEDED)
|
31
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
32
|
+
end
|
33
|
+
|
34
|
+
@name = response.name
|
35
|
+
@type_name = response.type_name
|
36
|
+
@option = response.option
|
37
|
+
@created_datetime = Grpc::ORiN3::Provider::DateTimeConverter.from_int64(response.created_datetime)
|
38
|
+
@orin3_object_type = response.object_type
|
39
|
+
@extra = response.extra
|
40
|
+
rescue MessageClientError
|
41
|
+
raise
|
42
|
+
rescue StandardError => e
|
43
|
+
raise MessageClientError.new(e)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def id
|
48
|
+
@internal_id.unpack('H*').first.gsub(/(.{8})(.{4})(.{4})(.{4})(.{12})/, '\1-\2-\3-\4-\5')
|
49
|
+
end
|
50
|
+
|
51
|
+
def get_tag(key)
|
52
|
+
begin
|
53
|
+
sut = O3::BaseObjectService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
54
|
+
request = O3::GetTagRequest.new(common: O3P::CommonRequest.new, id: @internal_id, key: key)
|
55
|
+
response = sut.get_tag(request)
|
56
|
+
if (response.common.result_code != :SUCCEEDED)
|
57
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
58
|
+
end
|
59
|
+
return ORiN3BinaryConverter.deserialize(response.tag)
|
60
|
+
rescue MessageClientError
|
61
|
+
raise
|
62
|
+
rescue StandardError => e
|
63
|
+
raise
|
64
|
+
raise MessageClientError.new(e)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
def set_tag(key, tag, type = nil)
|
69
|
+
begin
|
70
|
+
sut = O3::BaseObjectService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
71
|
+
if type == ORiN3BinaryConverter::DataType::StringArray
|
72
|
+
puts ORiN3BinaryConverter.serialize(tag, type).unpack('H*')[0].scan(/../).join(' ')
|
73
|
+
end
|
74
|
+
request = O3::SetTagRequest.new(common: O3P::CommonRequest.new, id: @internal_id, key: key, tag: ORiN3BinaryConverter.serialize(tag, type))
|
75
|
+
response = sut.set_tag(request)
|
76
|
+
if (response.common.result_code != :SUCCEEDED)
|
77
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
78
|
+
end
|
79
|
+
rescue MessageClientError
|
80
|
+
raise
|
81
|
+
rescue StandardError => e
|
82
|
+
raise MessageClientError.new(e)
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
def get_tag_keys
|
87
|
+
begin
|
88
|
+
sut = O3::BaseObjectService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
89
|
+
request = O3::GetTagKeysRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
90
|
+
response = sut.get_tag_keys(request)
|
91
|
+
if (response.common.result_code != :SUCCEEDED)
|
92
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
93
|
+
end
|
94
|
+
return response.keys
|
95
|
+
rescue MessageClientError
|
96
|
+
raise
|
97
|
+
rescue StandardError => e
|
98
|
+
raise MessageClientError.new(e)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
def remove_tag(key)
|
103
|
+
begin
|
104
|
+
sut = O3::BaseObjectService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
105
|
+
request = O3::RemoveTagRequest.new(common: O3P::CommonRequest.new, id: @internal_id, key: key)
|
106
|
+
response = sut.remove_tag(request)
|
107
|
+
if (response.common.result_code != :SUCCEEDED)
|
108
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
109
|
+
end
|
110
|
+
rescue MessageClientError
|
111
|
+
raise
|
112
|
+
rescue StandardError => e
|
113
|
+
raise MessageClientError.new(e)
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def get_status
|
118
|
+
begin
|
119
|
+
sut = O3::BaseObjectService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
120
|
+
request = O3::GetStatusRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
121
|
+
response = sut.get_status(request)
|
122
|
+
if (response.common.result_code != :SUCCEEDED)
|
123
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
124
|
+
end
|
125
|
+
return response.status
|
126
|
+
rescue MessageClientError
|
127
|
+
raise
|
128
|
+
rescue StandardError => e
|
129
|
+
raise MessageClientError.new(e)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
def execute(command_name)
|
134
|
+
end
|
135
|
+
|
136
|
+
def execute(command_name, argument)
|
137
|
+
end
|
138
|
+
|
139
|
+
private
|
140
|
+
attr_reader :internal_id
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
145
|
+
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
require_relative '../../../../../gen/Design.ORiN3.Common/V1/orin3_common_pb'
|
2
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_resource_opener_pb'
|
3
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_resource_opener_services_pb'
|
4
|
+
require_relative '../message_client_error'
|
5
|
+
require_relative '../../../orin3/provider/orin3_binary_converter'
|
6
|
+
|
7
|
+
module O3P
|
8
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
9
|
+
end
|
10
|
+
|
11
|
+
module O3
|
12
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
13
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::ResourceOpener
|
14
|
+
end
|
15
|
+
|
16
|
+
module Grpc
|
17
|
+
module Client
|
18
|
+
module ORiN3
|
19
|
+
module Provider
|
20
|
+
module ORiN3ChildCreator
|
21
|
+
def create_variable(name, type_name, option, value_type)
|
22
|
+
begin
|
23
|
+
controller = O3::ChildCreatorService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
24
|
+
request = O3::CreateVariableRequest.new(common: O3P::CommonRequest.new, parent_id: @internal_id, name: name, type_name: type_name, option: option, value_type: value_type)
|
25
|
+
response = controller.create_variable(request)
|
26
|
+
if (response.common.result_code != :SUCCEEDED)
|
27
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
28
|
+
end
|
29
|
+
return ORiN3Variable.new(@channel, response.variable_id, response.created_datetime, value_type)
|
30
|
+
rescue MessageClientError
|
31
|
+
raise
|
32
|
+
rescue StandardError => e
|
33
|
+
raise MessageClientError.new(e)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def create_job(name, type_name, option)
|
38
|
+
begin
|
39
|
+
controller = O3::ChildCreatorService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
40
|
+
request = O3::CreateJobRequest.new(common: O3P::CommonRequest.new, parent_id: @internal_id, name: name, type_name: type_name, option: option)
|
41
|
+
response = controller.create_job(request)
|
42
|
+
if (response.common.result_code != :SUCCEEDED)
|
43
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
44
|
+
end
|
45
|
+
return ORiN3Job.new(@channel, response.job_id, response.created_datetime)
|
46
|
+
rescue MessageClientError
|
47
|
+
raise
|
48
|
+
rescue StandardError => e
|
49
|
+
raise MessageClientError.new(e)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
def create_file(name, type_name, option)
|
54
|
+
begin
|
55
|
+
controller = O3::ChildCreatorService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
56
|
+
request = O3::CreateFileRequest.new(common: O3P::CommonRequest.new, parent_id: @internal_id, name: name, type_name: type_name, option: option)
|
57
|
+
response = controller.create_file(request)
|
58
|
+
if (response.common.result_code != :SUCCEEDED)
|
59
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
60
|
+
end
|
61
|
+
return ORiN3File.new(@channel, response.file_id, response.created_datetime)
|
62
|
+
rescue MessageClientError
|
63
|
+
raise
|
64
|
+
rescue StandardError => e
|
65
|
+
raise MessageClientError.new(e)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def create_stream(name, type_name, option)
|
70
|
+
begin
|
71
|
+
controller = O3::ChildCreatorService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
72
|
+
request = O3::CreateStreamRequest.new(common: O3P::CommonRequest.new, parent_id: @internal_id, name: name, type_name: type_name, option: option)
|
73
|
+
response = controller.create_stream(request)
|
74
|
+
if (response.common.result_code != :SUCCEEDED)
|
75
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
76
|
+
end
|
77
|
+
return ORiN3Stream.new(@channel, response.stream_id, response.created_datetime)
|
78
|
+
rescue MessageClientError
|
79
|
+
raise
|
80
|
+
rescue StandardError => e
|
81
|
+
raise MessageClientError.new(e)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
def create_module(name, type_name, option)
|
86
|
+
begin
|
87
|
+
controller = O3::ChildCreatorService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
88
|
+
request = O3::CreateModuleRequest.new(common: O3P::CommonRequest.new, parent_id: @internal_id, name: name, type_name: type_name, option: option)
|
89
|
+
response = controller.create_module(request)
|
90
|
+
if (response.common.result_code != :SUCCEEDED)
|
91
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
92
|
+
end
|
93
|
+
return ORiN3Module.new(@channel, response.module_id, response.created_datetime)
|
94
|
+
rescue MessageClientError
|
95
|
+
raise
|
96
|
+
rescue StandardError => e
|
97
|
+
raise MessageClientError.new(e)
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require_relative '../../../../../gen/Design.ORiN3.Common/V1/orin3_common_pb'
|
2
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_resource_opener_pb'
|
3
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_resource_opener_services_pb'
|
4
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_child_creator_pb'
|
5
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_child_creator_services_pb'
|
6
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_variable_pb'
|
7
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_variable_services_pb'
|
8
|
+
require_relative '../message_client_error'
|
9
|
+
require_relative 'orin3_base_object'
|
10
|
+
require_relative 'orin3_variable'
|
11
|
+
require_relative 'orin3_child_creator'
|
12
|
+
require_relative 'orin3_resource_opener'
|
13
|
+
|
14
|
+
module O3P
|
15
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
16
|
+
end
|
17
|
+
|
18
|
+
module O3
|
19
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
20
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::ResourceOpener
|
21
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::ChildCreator
|
22
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::Variable
|
23
|
+
end
|
24
|
+
|
25
|
+
module Grpc
|
26
|
+
module Client
|
27
|
+
module ORiN3
|
28
|
+
module Provider
|
29
|
+
class ORiN3Controller < ORiN3BaseObject
|
30
|
+
include ORiN3ChildCreator
|
31
|
+
include ORiN3ResourceOpener
|
32
|
+
attr_reader :created_datetime
|
33
|
+
|
34
|
+
def initialize(channel, internal_id, created_datetime)
|
35
|
+
@created_datetime = created_datetime
|
36
|
+
super(channel, internal_id)
|
37
|
+
end
|
38
|
+
|
39
|
+
def connect(argument = nil)
|
40
|
+
argument = argument.nil? ? {} : argument
|
41
|
+
open(argument)
|
42
|
+
end
|
43
|
+
|
44
|
+
def disconnect(argument = nil)
|
45
|
+
argument = argument.nil? ? {} : argument
|
46
|
+
close(argument)
|
47
|
+
end
|
48
|
+
|
49
|
+
def create_controller(name, type_name, option)
|
50
|
+
begin
|
51
|
+
controller = O3::ControllerCreatorService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
52
|
+
request = O3::CreateControllerRequest.new(common: O3P::CommonRequest.new, parent_id: @internal_id, name: name, type_name: type_name, option: option)
|
53
|
+
response = controller.create_controller(request)
|
54
|
+
if (response.common.result_code != :SUCCEEDED)
|
55
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
56
|
+
end
|
57
|
+
return ORiN3Controller.new(@channel, response.id, response.created_datetime)
|
58
|
+
rescue MessageClientError
|
59
|
+
raise
|
60
|
+
rescue StandardError => e
|
61
|
+
raise MessageClientError.new(e)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -0,0 +1,146 @@
|
|
1
|
+
require_relative '../../../../../gen/Design.ORiN3.Common/V1/orin3_common_pb'
|
2
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_file_pb'
|
3
|
+
|
4
|
+
module O3P
|
5
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
6
|
+
end
|
7
|
+
|
8
|
+
module O3
|
9
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
10
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::File
|
11
|
+
end
|
12
|
+
|
13
|
+
module Grpc
|
14
|
+
module Client
|
15
|
+
module ORiN3
|
16
|
+
module Provider
|
17
|
+
class ORiN3File < ORiN3BaseObject
|
18
|
+
attr_reader :created_datetime
|
19
|
+
include ORiN3ResourceOpener
|
20
|
+
|
21
|
+
def initialize(channel, internal_id, created_datetime)
|
22
|
+
@created_datetime = created_datetime
|
23
|
+
super(channel, internal_id)
|
24
|
+
end
|
25
|
+
|
26
|
+
def read(buffer_size = 1048576)
|
27
|
+
begin
|
28
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
29
|
+
request = O3::ReadFileRequest.new(common: O3P::CommonRequest.new, id: @internal_id, buffer_size: buffer_size)
|
30
|
+
responses = file.read(request)
|
31
|
+
responses.each do |response|
|
32
|
+
if response.common.result_code != :SUCCEEDED
|
33
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
34
|
+
end
|
35
|
+
yield response.buffer if block_given?
|
36
|
+
end
|
37
|
+
rescue MessageClientError
|
38
|
+
raise
|
39
|
+
rescue StandardError => e
|
40
|
+
raise MessageClientError.new(e)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def write(buffer)
|
45
|
+
begin
|
46
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
47
|
+
request = O3::WriteFileRequest.new(common: O3P::CommonRequest.new, id: @internal_id, buffer: buffer, total_length: buffer.length)
|
48
|
+
response = file.write(
|
49
|
+
Enumerator.new do |yielder|
|
50
|
+
yielder << request
|
51
|
+
end
|
52
|
+
)
|
53
|
+
|
54
|
+
if response.common.result_code != :SUCCEEDED
|
55
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
56
|
+
end
|
57
|
+
rescue MessageClientError
|
58
|
+
raise
|
59
|
+
rescue StandardError => e
|
60
|
+
raise MessageClientError.new(e)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
def seek(offset, origin = :BEGIN)
|
65
|
+
begin
|
66
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
67
|
+
request = O3::SeekFileRequest.new(common: O3P::CommonRequest.new, id: @internal_id, offset: offset, origin: origin)
|
68
|
+
response = file.seek(request)
|
69
|
+
if (response.common.result_code != :SUCCEEDED)
|
70
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
71
|
+
end
|
72
|
+
return response.position
|
73
|
+
rescue MessageClientError
|
74
|
+
raise
|
75
|
+
rescue StandardError => e
|
76
|
+
raise MessageClientError.new(e)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
def can_read
|
81
|
+
begin
|
82
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
83
|
+
request = O3::CanReadFileRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
84
|
+
response = file.can_read(request)
|
85
|
+
if (response.common.result_code != :SUCCEEDED)
|
86
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
87
|
+
end
|
88
|
+
return response.can_read
|
89
|
+
rescue MessageClientError
|
90
|
+
raise
|
91
|
+
rescue StandardError => e
|
92
|
+
raise MessageClientError.new(e)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
def can_write
|
97
|
+
begin
|
98
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
99
|
+
request = O3::CanWriteFileRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
100
|
+
response = file.can_write(request)
|
101
|
+
if (response.common.result_code != :SUCCEEDED)
|
102
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
103
|
+
end
|
104
|
+
return response.can_write
|
105
|
+
rescue MessageClientError
|
106
|
+
raise
|
107
|
+
rescue StandardError => e
|
108
|
+
raise MessageClientError.new(e)
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
def get_length
|
113
|
+
begin
|
114
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
115
|
+
request = O3::GetFileLengthRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
116
|
+
response = file.get_length(request)
|
117
|
+
if (response.common.result_code != :SUCCEEDED)
|
118
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
119
|
+
end
|
120
|
+
return response.length
|
121
|
+
rescue MessageClientError
|
122
|
+
raise
|
123
|
+
rescue StandardError => e
|
124
|
+
raise MessageClientError.new(e)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
def set_length(length)
|
129
|
+
begin
|
130
|
+
file = O3::FileService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
131
|
+
request = O3::SetFileLengthRequest.new(common: O3P::CommonRequest.new, id: @internal_id, length: length)
|
132
|
+
response = file.set_length(request)
|
133
|
+
if (response.common.result_code != :SUCCEEDED)
|
134
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
135
|
+
end
|
136
|
+
rescue MessageClientError
|
137
|
+
raise
|
138
|
+
rescue StandardError => e
|
139
|
+
raise MessageClientError.new(e)
|
140
|
+
end
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
@@ -0,0 +1,86 @@
|
|
1
|
+
require_relative '../../../../../gen/Design.ORiN3.Common/V1/orin3_common_pb'
|
2
|
+
require_relative '../../../../../gen/Message.ORiN3.Provider/V1/orin3_job_pb'
|
3
|
+
require_relative '../message_client_error'
|
4
|
+
|
5
|
+
module O3P
|
6
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
7
|
+
end
|
8
|
+
|
9
|
+
module O3
|
10
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
11
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::Job
|
12
|
+
end
|
13
|
+
|
14
|
+
module Grpc
|
15
|
+
module Client
|
16
|
+
module ORiN3
|
17
|
+
module Provider
|
18
|
+
class ORiN3Job < ORiN3BaseObject
|
19
|
+
attr_reader :created_datetime
|
20
|
+
include ORiN3ResourceOpener
|
21
|
+
|
22
|
+
def initialize(channel, internal_id, created_datetime)
|
23
|
+
@created_datetime = created_datetime
|
24
|
+
super(channel, internal_id)
|
25
|
+
end
|
26
|
+
|
27
|
+
def start(argument = nil)
|
28
|
+
open(argument.nil? ? {} : argument)
|
29
|
+
end
|
30
|
+
|
31
|
+
def stop(argument = nil)
|
32
|
+
close(argument.nil? ? {} : argument)
|
33
|
+
end
|
34
|
+
|
35
|
+
def get_standard_output
|
36
|
+
begin
|
37
|
+
job = O3::JobService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
38
|
+
request = O3::GetStandardOutputRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
39
|
+
response = job.get_standard_output(request)
|
40
|
+
if (response.common.result_code != :SUCCEEDED)
|
41
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
42
|
+
end
|
43
|
+
response.output
|
44
|
+
rescue MessageClientError => ee
|
45
|
+
raise
|
46
|
+
rescue StandardError => e
|
47
|
+
raise MessageClientError.new(e)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
def get_standard_error
|
52
|
+
begin
|
53
|
+
job = O3::JobService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
54
|
+
request = O3::GetStandardErrorRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
55
|
+
response = job.get_standard_error(request)
|
56
|
+
if (response.common.result_code != :SUCCEEDED)
|
57
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
58
|
+
end
|
59
|
+
response.error
|
60
|
+
rescue MessageClientError => ee
|
61
|
+
raise
|
62
|
+
rescue StandardError => e
|
63
|
+
raise MessageClientError.new(e)
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
def get_result
|
68
|
+
begin
|
69
|
+
job = O3::JobService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
70
|
+
request = O3::GetResultRequest.new(common: O3P::CommonRequest.new, id: @internal_id)
|
71
|
+
response = job.get_result(request)
|
72
|
+
if (response.common.result_code != :SUCCEEDED)
|
73
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
74
|
+
end
|
75
|
+
response.is_null_result ? nil : ORiN3BinaryConverter.deserialize(response.result)
|
76
|
+
rescue MessageClientError => ee
|
77
|
+
raise
|
78
|
+
rescue StandardError => e
|
79
|
+
raise MessageClientError.new(e)
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require_relative '../../../../../gen/Design.ORiN3.Common/V1/orin3_common_pb'
|
2
|
+
require_relative '../message_client_error'
|
3
|
+
require_relative '../../../orin3/provider/orin3_binary_converter'
|
4
|
+
|
5
|
+
module O3P
|
6
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
7
|
+
end
|
8
|
+
|
9
|
+
module O3
|
10
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
11
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::ResourceOpener
|
12
|
+
end
|
13
|
+
|
14
|
+
module Grpc
|
15
|
+
module Client
|
16
|
+
module ORiN3
|
17
|
+
module Provider
|
18
|
+
class ORiN3Module < ORiN3BaseObject
|
19
|
+
attr_reader :created_datetime
|
20
|
+
include ORiN3ChildCreator
|
21
|
+
|
22
|
+
def initialize(channel, internal_id, created_datetime)
|
23
|
+
@created_datetime = created_datetime
|
24
|
+
super(channel, internal_id)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module O3P
|
2
|
+
include Message::ORiN3::Provider::V1::AutoGenerated
|
3
|
+
end
|
4
|
+
|
5
|
+
module O3
|
6
|
+
include Design::ORiN3::Common::V1::AutoGenerated
|
7
|
+
include Message::ORiN3::Provider::V1::AutoGenerated::ResourceOpener
|
8
|
+
end
|
9
|
+
|
10
|
+
module Grpc
|
11
|
+
module Client
|
12
|
+
module ORiN3
|
13
|
+
module Provider
|
14
|
+
module ORiN3ResourceOpener
|
15
|
+
def open(argument = nil)
|
16
|
+
argument = argument.nil? ? {} : argument
|
17
|
+
begin
|
18
|
+
resource_opener = O3::ResourceOpenerService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
19
|
+
request = O3::OpenRequest.new(common: O3P::CommonRequest.new, id: @internal_id, argument: ORiN3BinaryConverter.from_dictionary_to_binary(argument))
|
20
|
+
response = resource_opener.open(request)
|
21
|
+
if (response.common.result_code != :SUCCEEDED)
|
22
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
23
|
+
end
|
24
|
+
rescue MessageClientError => ee
|
25
|
+
raise
|
26
|
+
rescue StandardError => e
|
27
|
+
raise MessageClientError.new(e)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def close(argument = nil)
|
32
|
+
argument = argument.nil? ? {} : argument
|
33
|
+
begin
|
34
|
+
resource_opener = O3::ResourceOpenerService::Stub.new(nil, :this_channel_is_insecure, channel_override: @channel)
|
35
|
+
request = O3::CloseRequest.new(common: O3P::CommonRequest.new, id: @internal_id, argument: ORiN3BinaryConverter.from_dictionary_to_binary(argument))
|
36
|
+
response = resource_opener.close(request)
|
37
|
+
if (response.common.result_code != :SUCCEEDED)
|
38
|
+
raise MessageClientError.new(response.common.result_code, response.common.detail)
|
39
|
+
end
|
40
|
+
rescue MessageClientError
|
41
|
+
raise
|
42
|
+
rescue StandardError => e
|
43
|
+
raise MessageClientError.new(e)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|