mio-config 2.5.0 → 2.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9b537238571c23ae727d460f69433f156a60551d
4
- data.tar.gz: 29ecbac1e9932354cd695d1a965516e183d3fd43
3
+ metadata.gz: 6f1e26d83d4fa72cfade52f08bf25f9e7361f2e6
4
+ data.tar.gz: a1b2e7d34bfa15d38a2c6f140c42a71cc62e27ba
5
5
  SHA512:
6
- metadata.gz: 8afc13b5ee2df8f1ec4da287db3f2d99078858ed3251705736ee7d07b4c5cef58b36f4f5d8d9127e2d34e53edac8964792fc13d49ad63315e9b63f44dac1c65a
7
- data.tar.gz: 0580d40dd0b841e821e2e04ab30da860d8115a0c079542dc7db542332bb8d785aca96b59595cc9a4aa78e2715530b1dda3ce31202ee9a0391a7ccaa81cf5e32b
6
+ metadata.gz: 23d47af61ecd73647327b47da3b2e3165265baea78a1bb24fa8d0f36fd8971ede6b08fc08bdc3d6738f9882d0cb8c98dc10c651aae106a85d7ab99ec8a1219e1
7
+ data.tar.gz: 6de459c01961b7eda73ce8c3087ab46f60c3b68cede749fb3db3afdf999a635efe5e2d189181e38a0535ec5b35ded37a42a2229b5b041fa147cc960850a74ce7
@@ -5,3 +5,7 @@ end
5
5
  Dir[File.join(File.dirname(__FILE__), 'workflow', '*.rb')].each do |file|
6
6
  require File.join('mio', 'model', 'workflow', File.basename(file, File.extname(file)))
7
7
  end
8
+
9
+ Dir[File.join(File.dirname(__FILE__), 'metadatadefinition', '*.rb')].each do |file|
10
+ require File.join('mio', 'model', 'metadatadefinition', File.basename(file, File.extname(file)))
11
+ end
@@ -6,8 +6,8 @@ class Mio
6
6
  set_resource :metadataDefinitions
7
7
 
8
8
  field :name, String, 'Name of the metadata definition'
9
- field :displayName, String, 'Display name'
10
9
  field :visibility, Array,'IDs of accounts that may see this', [4]
10
+ field :displayName, String, 'Display name'
11
11
  field :searchable, Symbol, 'Searchable metadata'
12
12
  field :required, Symbol, 'Required Metadata'
13
13
  field :editable, Symbol, 'Editable within the workflow tool'
@@ -18,88 +18,19 @@ class Mio
18
18
 
19
19
  def create_hash
20
20
  {name: @args.name,
21
- visibilityIds: @args.visibility}
22
- end
23
-
24
- def validation_handler_by_type type
25
- case type
26
- when 'text'
27
- 'tv.nativ.mio.metadata.variable.def.validation.MaxLengthValidationHandler'
28
- when 'image'
29
- 'tv.nativ.mio.metadata.resource.def.MioFileVariable.FileValidationHandler'
30
- when 'string'
31
- 'tv.nativ.mio.metadata.variable.def.validation.MaxLengthValidationHandler'
32
- when 'url'
33
- 'tv.nativ.mio.metadata.resource.def.MioURLVariable$URLValidationHandler'
34
- else
35
- ''
36
- end
37
- end
38
-
39
- def build_options_xml children, hash
40
- children.send("option-child", name: hash.fetch(:name),
41
- default: hash.fetch(:default),
42
- value: hash.fetch(:value),
43
- display_name: hash.fetch(:displayName));
44
- end
45
-
46
- def build_children_xml children, hash, type=nil
47
- if type.nil?
48
- type = hash.fetch(:type)
49
- end
50
- children.send(type+'_', name: hash.fetch(:name), display_name: hash.fetch(:displayName)) do |child|
51
- child.searchable hash.fetch(:searchable).to_s
52
- child.editable hash.fetch(:editable).to_s
53
- child.required hash.fetch(:required)
54
- if hash.key?(:maxLength)
55
- max_length = hash.fetch(:maxLength)
56
- unless max_length.nil? && max_length.equal?(-1)
57
- child.send("max-length", max_length )
58
- end
59
- end
60
- if hash.key?(:validationHandler)
61
- validation_handler = hash.fetch(:validationHandler)
62
- unless validation_handler.nil?
63
- child.validation handler: validation_handler
64
- end
65
- else
66
- child.validation handler: validation_handler_by_type(type)
67
- end
68
- if hash.key?(:formType)
69
- child.send("form-type", hash.fetch(:formType))
70
- end
71
- if hash.key?(:options)
72
- options = hash.fetch(:options)
73
- unless options.nil? && options.length > 0
74
- child.children do |children|
75
- options.each do |option|
76
- build_options_xml children, option
77
- end
78
- end
79
- end
80
- end
81
- if hash.key?(:strings)
82
- strings = hash.fetch(:strings)
83
- unless strings.nil? && strings.length > 0
84
- child.children do |children|
85
- strings.each do |string|
86
- build_children_xml children, string, 'string'
87
- end
88
- end
89
- end
90
- end
91
- end
21
+ visibilityIds: @args.visibility}
92
22
  end
93
23
 
94
- def definition_xml
24
+ def build_xml
95
25
  xml_builder = Nokogiri::XML::Builder.new do |xml|
96
26
  xml.metadata(name: @args.name ) {
97
27
  xml.searchable @args.searchable.to_s
98
28
  xml.editable @args.editable.to_s
99
29
  xml.required @args.required.to_s
100
30
  xml.children do |children|
101
- @args.definitions.each do |definition|
102
- build_children_xml children, definition
31
+ @args.definitions.each do |defs|
32
+ definition = Mio::Model::MetadataDefinition::Definition.new @client, OpenStruct.new(defs)
33
+ definition.build_xml children
103
34
  end
104
35
  end
105
36
  }
@@ -120,7 +51,7 @@ class Mio
120
51
  end
121
52
  definition_path = "#{self.class.resource_name}/#{@object['id']}/definition"
122
53
 
123
- @client.definition definition_path, definition_xml
54
+ @client.definition definition_path, build_xml
124
55
 
125
56
  set_enable
126
57
  return @object
@@ -13,11 +13,78 @@ class Mio
13
13
  field :required, Symbol, 'Required mandatory metadata item', :true
14
14
  field :formType, String, 'Form control type'
15
15
  field :maxLength, Fixnum, 'MaxLength', -1
16
- field :validationHandler, String, 'Validation handler', nil
17
- field :options, Array, 'Array of options', nil
16
+ field :validationHandler, String, 'Validation handler', ''
17
+ field :options, Array, 'Array of options', []
18
+ field :strings, Array, 'Array of strings for use in componenets such as image', []
18
19
 
19
20
  nested true
20
21
 
22
+ def create_hash
23
+ {name: @args.name,
24
+ displayName: @args.displayName,
25
+ type: @args.type,
26
+ description: @args.description,
27
+ searchable: @args.searchable,
28
+ editable: @args.editable,
29
+ required: @args.required,
30
+ formType: @args.formType,
31
+ maxLength: @args.maxLength,
32
+ validationHandler: @args.validationHandler,
33
+ options: @args.options
34
+ }
35
+ end
36
+
37
+ def validation_handler_by_type type
38
+ case type
39
+ when 'text'
40
+ 'tv.nativ.mio.metadata.variable.def.validation.MaxLengthValidationHandler'
41
+ when 'image'
42
+ 'tv.nativ.mio.metadata.resource.def.MioFileVariable.FileValidationHandler'
43
+ when 'string'
44
+ 'tv.nativ.mio.metadata.variable.def.validation.MaxLengthValidationHandler'
45
+ when 'url'
46
+ 'tv.nativ.mio.metadata.resource.def.MioURLVariable$URLValidationHandler'
47
+ else
48
+ ''
49
+ end
50
+ end
51
+
52
+ def build_xml children, type=nil
53
+ if type.nil?
54
+ type = @args.type
55
+ end
56
+ children.send(type+'_', name: @args.name, display_name: @args.displayName) do |child|
57
+ child.searchable @args.searchable.to_s
58
+ child.editable @args.editable.to_s
59
+ child.required @args.required
60
+ unless @args.maxLength.equal?(-1)
61
+ child.send("max-length", @args.maxLength )
62
+ end
63
+ if @args.validation_handler.nil? || @args.validation_handler == ''
64
+ child.validation handler: validation_handler_by_type(type)
65
+ else
66
+ child.validation handler: validation_handler
67
+ end
68
+ child.send("form-type", @args.formType)
69
+ if !@args.options.nil? && @args.options.length > 0
70
+ child.children do |children|
71
+ @args.options.each do |option|
72
+ option_model = Mio::Model::MetadataDefinition::Option.new @client, OpenStruct.new(option)
73
+ option_model.build_xml children
74
+ end
75
+ end
76
+ end
77
+ if !@args.strings.nil? && @args.strings.length > 0
78
+ child.children do |children|
79
+ @args.strings.each do |string|
80
+ definition = Mio::Model::MetadataDefinition::Definition.new @client, OpenStruct.new(string)
81
+ definition.build_xml children, 'string'
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
87
+
21
88
  end
22
89
  end
23
90
  end
@@ -7,12 +7,26 @@ class Mio
7
7
  field :name, String, 'Metadata Definition Name'
8
8
  field :displayName, String, 'Metadata Definition Description'
9
9
  field :default, Symbol, 'Metadata type'
10
- field :value, String, 'Indexed and searchable',
11
- field :type, String, 'option type option-child|string'
10
+ field :value, String, 'Indexed and searchable'
12
11
 
13
12
  nested true
14
13
 
14
+ def create_hash
15
+ {name: @args.name,
16
+ displayName: @args.displayName,
17
+ default: @args.default,
18
+ value: @args.value
19
+ }
20
+ end
21
+
22
+ def build_xml children
23
+ children.send("option-child", name: @args.name,
24
+ default: @args.default,
25
+ value: @args.value,
26
+ display_name: @args.displayName);
27
+ end
28
+
15
29
  end
16
30
  end
17
31
  end
18
- end
32
+ end
@@ -7,6 +7,7 @@ class Mio
7
7
  field :name, String, 'Nodal Name'
8
8
  field :action, String, 'Name of the action, empty for none', 'Load S3'
9
9
  field :type, String, 'Action Type', 'ACTION'
10
+ field :assetContext, String, 'Asset context', ''
10
11
 
11
12
  nested true
12
13
 
@@ -15,11 +16,14 @@ class Mio
15
16
  path: "/#{@args.path}",
16
17
  type: @args.type.upcase,
17
18
  }
19
+ unless @args.assetContext.eql? ''
20
+ h[:assetContext] = @args.assetContext
21
+ end
18
22
  if @args.type.upcase == 'ACTION'
19
23
  action = @search.find_actions_by_name(@args.action).first
20
24
  h[:action] = normalize_action action
21
-
22
25
  end
26
+
23
27
  h
24
28
  end
25
29
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mio-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0
4
+ version: 2.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - jspc
@@ -102,33 +102,33 @@ extensions: []
102
102
  extra_rdoc_files:
103
103
  - README.md
104
104
  files:
105
- - "./lib//mio.rb"
106
- - "./lib//mio/client.rb"
107
- - "./lib//mio/config.rb"
108
- - "./lib//mio/errors.rb"
109
- - "./lib//mio/migrations.rb"
110
- - "./lib//mio/model.rb"
111
- - "./lib//mio/model/autoload.rb"
112
- - "./lib//mio/model/email_message_action.rb"
113
- - "./lib//mio/model/groovy_script.rb"
114
- - "./lib//mio/model/groovy_script_wait.rb"
115
- - "./lib//mio/model/hotfolder.rb"
116
- - "./lib//mio/model/import_action.rb"
117
- - "./lib//mio/model/message_template.rb"
118
- - "./lib//mio/model/metadata_definition.rb"
119
- - "./lib//mio/model/metadatadefinition/definition.rb"
120
- - "./lib//mio/model/metadatadefinition/option.rb"
121
- - "./lib//mio/model/place_holder_group_asset_action.rb"
122
- - "./lib//mio/model/s3.rb"
123
- - "./lib//mio/model/variant.rb"
124
- - "./lib//mio/model/workflow.rb"
125
- - "./lib//mio/model/workflow/node.rb"
126
- - "./lib//mio/model/workflow/transition.rb"
127
- - "./lib//mio/requests.rb"
128
- - "./lib//mio/search.rb"
129
- - "./lib//mio/tasks.rb"
130
- - "./lib//mio/tasks/migrations.rb"
131
- - "./lib//mio/tasks/skeletons.rb"
105
+ - "./lib/mio.rb"
106
+ - "./lib/mio/client.rb"
107
+ - "./lib/mio/config.rb"
108
+ - "./lib/mio/errors.rb"
109
+ - "./lib/mio/migrations.rb"
110
+ - "./lib/mio/model.rb"
111
+ - "./lib/mio/model/autoload.rb"
112
+ - "./lib/mio/model/email_message_action.rb"
113
+ - "./lib/mio/model/groovy_script.rb"
114
+ - "./lib/mio/model/groovy_script_wait.rb"
115
+ - "./lib/mio/model/hotfolder.rb"
116
+ - "./lib/mio/model/import_action.rb"
117
+ - "./lib/mio/model/message_template.rb"
118
+ - "./lib/mio/model/metadata_definition.rb"
119
+ - "./lib/mio/model/metadatadefinition/definition.rb"
120
+ - "./lib/mio/model/metadatadefinition/option.rb"
121
+ - "./lib/mio/model/place_holder_group_asset_action.rb"
122
+ - "./lib/mio/model/s3.rb"
123
+ - "./lib/mio/model/variant.rb"
124
+ - "./lib/mio/model/workflow.rb"
125
+ - "./lib/mio/model/workflow/node.rb"
126
+ - "./lib/mio/model/workflow/transition.rb"
127
+ - "./lib/mio/requests.rb"
128
+ - "./lib/mio/search.rb"
129
+ - "./lib/mio/tasks.rb"
130
+ - "./lib/mio/tasks/migrations.rb"
131
+ - "./lib/mio/tasks/skeletons.rb"
132
132
  - README.md
133
133
  homepage: https://ft.com
134
134
  licenses: