Class: Operaton::Bpm::Engine::Variable::ValueType
- Inherits:
-
Object
- Object
- Operaton::Bpm::Engine::Variable::ValueType
- Defined in:
- lib/operaton/bpm/engine/variable/value_type.rb,
lib/operaton/bpm/engine/variable/value_type.rb
Overview
Mirrors org.operaton.bpm.engine.variable.type.ValueType and its implementations, reduced to what the external task client needs.
Direct Known Subclasses
Constant Summary collapse
- VALUE_INFO_TRANSIENT =
"transient"- INTEGER_MIN =
-2**31
- INTEGER_MAX =
2**31 - 1
- LONG_MIN =
-2**63
- LONG_MAX =
2**63 - 1
- SHORT_MIN =
-2**15
- SHORT_MAX =
2**15 - 1
- NULL =
PrimitiveValueType.new("null") { |v| v.nil? }
- BOOLEAN =
PrimitiveValueType.new("boolean") { |v| v == true || v == false }
- STRING =
PrimitiveValueType.new("string") { |v| v.is_a?(String) }
- DATE =
PrimitiveValueType.new("date") do |v| v.is_a?(Time) || (defined?(DateTime) && v.is_a?(DateTime)) || (defined?(::Date) && v.is_a?(::Date)) end
- BYTES =
PrimitiveValueType.new("bytes") { |v| v.is_a?(String) }
- INTEGER =
PrimitiveValueType.new("integer") { |v| v.is_a?(Integer) && v.between?(INTEGER_MIN, INTEGER_MAX) }
- LONG =
PrimitiveValueType.new("long") { |v| v.is_a?(Integer) && v.between?(LONG_MIN, LONG_MAX) }
- SHORT =
PrimitiveValueType.new("short") { |v| v.is_a?(Integer) && v.between?(SHORT_MIN, SHORT_MAX) }
- DOUBLE =
PrimitiveValueType.new("double") { |v| v.is_a?(Float) }
- NUMBER =
NumberValueType.new("number") { |v| v.is_a?(Numeric) }
- OBJECT =
ObjectValueType.new
- FILE =
FileValueType.new
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Instance Method Summary collapse
- #abstract? ⇒ Boolean
-
#initialize(name) ⇒ ValueType
constructor
A new instance of ValueType.
- #primitive_value_type? ⇒ Boolean
- #to_s ⇒ Object
-
#value_info(typed_value) ⇒ Object
Mirrors ValueType#getValueInfo(TypedValue).
Constructor Details
#initialize(name) ⇒ ValueType
Returns a new instance of ValueType.
12 13 14 |
# File 'lib/operaton/bpm/engine/variable/value_type.rb', line 12 def initialize(name) @name = name end |
Instance Attribute Details
#name ⇒ Object (readonly)
Returns the value of attribute name.
10 11 12 |
# File 'lib/operaton/bpm/engine/variable/value_type.rb', line 10 def name @name end |
Instance Method Details
#abstract? ⇒ Boolean
20 21 22 |
# File 'lib/operaton/bpm/engine/variable/value_type.rb', line 20 def abstract? false end |
#primitive_value_type? ⇒ Boolean
16 17 18 |
# File 'lib/operaton/bpm/engine/variable/value_type.rb', line 16 def primitive_value_type? false end |
#to_s ⇒ Object
31 32 33 |
# File 'lib/operaton/bpm/engine/variable/value_type.rb', line 31 def to_s name end |
#value_info(typed_value) ⇒ Object
Mirrors ValueType#getValueInfo(TypedValue)
25 26 27 28 29 |
# File 'lib/operaton/bpm/engine/variable/value_type.rb', line 25 def value_info(typed_value) info = {} info[VALUE_INFO_TRANSIENT] = true if typed_value.transient? info end |