cpee 2.1.66 → 2.1.68

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 052d8f4e613153998b5712cadd2204756c242376b4b037e2cb9b8a3a1542116c
4
- data.tar.gz: 538940981be635be63e6d0790a5f3bac6bbd855a47b2acfc0fc96ddc26dde6d6
3
+ metadata.gz: c36325edb208f1b8eaa166cae99f5a83890757ef26ff0aeb9cf248f42bda8817
4
+ data.tar.gz: 232611580b230719df8c19fe48c170d188f61782ca16a031f56c7e8ada68ffea
5
5
  SHA512:
6
- metadata.gz: 2dcba10b6275f5cf5f6a7a2fa32fee4439c807cd248e3d22e65ed1a28a9fe6f5c5a1d7f318742ea3154421cbf4dfafe3fd0d96973599339425c7ef1cae4c8d94
7
- data.tar.gz: 961f0578ee2657dd785494c3a9d61a289a3a29302f2373ef592ab1f1109cd07704737b9035990820de5c042bed72384055c8a08d7facf95430755f5b7825febc
6
+ metadata.gz: ad8f23a17b7888cdee3eab8e4249c8a90f7c479302b8dfc2ce079de3e2a7884d2a62faa426792611d1d43ba1bd0ccb0a816c3ea722c55892d3c9446dd0408a02
7
+ data.tar.gz: 6b41e1aeed9cd96fce808a87aa2849195f3fa55e9717da6eefab908e5c955cea02138763c4d533cbe653969ddb5eb00d2e924a71a4406a6d6b69e905c3644c2a
@@ -224,6 +224,14 @@
224
224
  <attribute name="allocated_to" rngui:label="allocated_to" rngui:default="not_allocated">
225
225
  <data type="string" rngui:readonly="true"/>
226
226
  </attribute>
227
-
227
+ </element>
228
+ <element name="expectedready" rngui:label="Expected Ready">
229
+ <data name="expectedready" type="decimal" rngui:readonly="true"/>
230
+ </element>
231
+ <element name="plannedstart" rngui:label="Planned Start Time">
232
+ <data name="plannedstart" type="decimal" rngui:readonly="true"/>
233
+ </element>
234
+ <element name="plannedend" rngui:label="Planned End Time">
235
+ <data name="plannedend" type="decimal" rngui:readonly="true"/>
228
236
  </element>
229
237
  </element>
@@ -253,7 +253,15 @@
253
253
  <attribute name="allocated_to" rngui:label="allocated_to" rngui:default="not_allocated">
254
254
  <data type="string" rngui:readonly="true"/>
255
255
  </attribute>
256
-
257
256
  </element>
258
257
 
258
+ <element name="expectedready" rngui:label="Expected Ready">
259
+ <data name="expectedready" type="decimal" rngui:readonly="true"/>
260
+ </element>
261
+ <element name="plannedstart" rngui:label="Planned Start Time">
262
+ <data name="plannedstart" type="decimal" rngui:readonly="true"/>
263
+ </element>
264
+ <element name="plannedend" rngui:label="Planned End Time">
265
+ <data name="plannedend" type="decimal" rngui:readonly="true"/>
266
+ </element>
259
267
  </element>
@@ -15,6 +15,15 @@
15
15
  <attribute name="allocated_to" rngui:label="allocated_to" rngui:default="not_allocated">
16
16
  <data type="string" rngui:readonly="true"/>
17
17
  </attribute>
18
-
19
18
  </element>
19
+ <element name="expectedready" rngui:label="Expected Ready">
20
+ <data name="expectedready" type="decimal" rngui:readonly="true"/>
21
+ </element>
22
+ <element name="plannedstart" rngui:label="Planned Start Time">
23
+ <data name="plannedstart" type="decimal" rngui:readonly="true"/>
24
+ </element>
25
+ <element name="plannedend" rngui:label="Planned End Time">
26
+ <data name="plannedend" type="decimal" rngui:readonly="true"/>
27
+ </element>
28
+
20
29
  </element>
data/cpee.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee"
3
- s.version = "2.1.66"
3
+ s.version = "2.1.68"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0-or-later"
6
6
  s.summary = "The cloud process execution engine (cpee.org). If you just need workflow execution, without a rest service exposing it, then use WEEL."
@@ -36,19 +36,15 @@ class ConnectionWrapper < WEEL::ConnectionWrapperBase
36
36
  def self::inform_syntax_error(arguments,err,code)# {{{
37
37
  # TODO extract spot (code) where error happened for better error handling (ruby 3.1 only)
38
38
  # https://github.com/rails/rails/pull/45818/commits/3beb2aff3be712e44c34a588fbf35b79c0246ca5
39
- puts err.message
40
- puts err.backtrace
41
-
42
39
  controller = arguments[0]
43
- mess = err.backtrace ? err.backtrace[0].gsub(/([\w -_]+):(\d+):in.*/,'\\1, Line \2: ') : ''
44
- mess += err.message
45
- controller.notify("description/error", :message => mess)
40
+ controller.notify("executionhandler/error", :message => err.backtrace[0].match(/(.*?), Line (\d+):\s(.*)/)[3] + err.message, :line => err.backtrace[0].match(/(.*?), Line (\d+):/)[2], :where => err.backtrace[0].match(/(.*?), Line (\d+):/)[1])
41
+ #mess = err.backtrace ? err.backtrace[0].gsub(/([\w -_]+):(\d+):in.*/,'\\1, Line \2: ') : ''
42
+ #mess += err.message
43
+ #controller.notify("description/error", :message => err.message, :line => err.backtrace[0].match(/(.*?):(\d+):/)[2], :where => err.backtrace[0].match(/(.*?):(\d+):/)[1])
46
44
  end# }}}
47
45
  def self::inform_connectionwrapper_error(arguments,err) # {{{
48
46
  controller = arguments[0]
49
- puts err.message
50
- puts err.backtrace
51
- controller.notify("executionhandler/error", :message => err.backtrace[0].gsub(/([\w -_]+):(\d+):in.*/,'\\1, Line \2: ') + err.message)
47
+ controller.notify("executionhandler/error", :message => err.backtrace[0].match(/(.*?), Line (\d+):\s(.*)/)[3] + err.message, :line => err.backtrace[0].match(/(.*?), Line (\d+):/)[2], :where => err.backtrace[0].match(/(.*?), Line (\d+):/)[1])
52
48
  end # }}}
53
49
  def self::inform_position_change(arguments,ipc={}) # {{{
54
50
  controller = arguments[0]
@@ -250,9 +246,7 @@ class ConnectionWrapper < WEEL::ConnectionWrapperBase
250
246
  @controller.notify("activity/manipulating", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position)
251
247
  end # }}}
252
248
  def inform_activity_failed(err) # {{{
253
- puts err.message
254
- puts err.backtrace
255
- @controller.notify("activity/failed", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :message => err.message, :line => err.backtrace[0].match(/(.*?):(\d+):/)[2], :where => err.backtrace[0].match(/(.*?):(\d+):/)[1])
249
+ @controller.notify("activity/failed", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :message => err.backtrace[0].match(/(.*?):(\d+):\s(.*)/)[3], :line => err.backtrace[0].match(/(.*?):(\d+):/)[2], :where => err.backtrace[0].match(/(.*?):(\d+):/)[1])
256
250
  end # }}}
257
251
  def inform_manipulate_change(status,changed_dataelements,changed_endpoints,dataelements,endpoints) # {{{
258
252
  unless status.nil?
@@ -326,11 +320,23 @@ class ConnectionWrapper < WEEL::ConnectionWrapperBase
326
320
  GC.start
327
321
  end #}}}
328
322
 
329
- def prepare(lock,dataelements,endpoints,status,local,additional,code,exec_endpoints,exec_parameters)
323
+ def code_error_handling(ret,where,what=RuntimeError) #{{{
324
+ sig = ret.find{|e| e.name == "signal" }.value
325
+ sigt = ret.find{|e| e.name == "signal_text" }.value
326
+ case sig
327
+ when 'Signal::Again'; throw WEEL::Signal::Again
328
+ when 'Signal::Error'; raise what, '', [where + ' ' + sigt]
329
+ when 'Signal::Stop'; raise WEEL::Signal::Stop
330
+ when 'Signal::SyntaxError'; raise SyntaxError, '', [where + ' ' + sigt]
331
+ else
332
+ raise 'something bad happened, but we dont know what.'
333
+ end
334
+ end #}}}
335
+ def prepare(lock,dataelements,endpoints,status,local,additional,code,exec_endpoints,exec_parameters) #{{{
330
336
  struct = if code
331
- manipulate(true,lock,dataelements,endpoints,status,local,additional,code,'Parameter')
337
+ manipulate(true,lock,dataelements,endpoints,status,local,additional,code,'prepare')
332
338
  else
333
- WEEL::ReadStructure.new(data,endpoints,local,additional)
339
+ WEEL::ReadStructure.new(dataelements,endpoints,local,additional)
334
340
  end
335
341
  @handler_endpoint = exec_endpoints.is_a?(Array) ? exec_endpoints.map{ |ep| struct.endpoints[ep] }.compact : struct.endpoints[exec_endpoints]
336
342
  if @controller.attributes['twin_engine']
@@ -353,7 +359,7 @@ class ConnectionWrapper < WEEL::ConnectionWrapperBase
353
359
  recv = if status >= 200 && status < 300
354
360
  ret[0].value
355
361
  else
356
- nil
362
+ code_error_handling ret, 'Parameter ' + t.value.code
357
363
  end
358
364
  t.value = recv
359
365
  end
@@ -373,7 +379,7 @@ class ConnectionWrapper < WEEL::ConnectionWrapperBase
373
379
  recv = if status >= 200 && status < 300
374
380
  ret[0].value
375
381
  else
376
- nil
382
+ code_error_handling ret, 'Condition ' + code, WEEL::Signal::Error
377
383
  end
378
384
  recv = 'false' unless recv
379
385
  recv = (recv == 'false' || recv == 'null' || recv == 'nil' ? false : true)
@@ -411,7 +417,7 @@ class ConnectionWrapper < WEEL::ConnectionWrapperBase
411
417
 
412
418
  struct
413
419
  else
414
- nil
420
+ code_error_handling ret, where
415
421
  end
416
422
  end
417
423
  end #}}}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpee
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.66
4
+ version: 2.1.68
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: tools
12
12
  cert_chain: []
13
- date: 2024-09-18 00:00:00.000000000 Z
13
+ date: 2024-09-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: riddl