keytechkit 0.3.16 → 0.3.17

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: 57f8b73f659fce78a663b2a6ce59c8e622a6a7044e9dd1cdbb322b9c5240788b
4
- data.tar.gz: 96beee9a69d2aaa78730bf5a261ae2a6ef51902a4e2c90b7d79f791490626d86
3
+ metadata.gz: 1b5c86101c08620c9f6217e628728f2a62f299a32a56944682d786c64d020d97
4
+ data.tar.gz: 4ba5c80ee322c9bca3c9549637f54b9653df0c0e6eaf9d0499c9667c35015880
5
5
  SHA512:
6
- metadata.gz: 135869814f45a8cde8609cea21fa625896419e8815babce9e007e2193ad678bc3aa5d8683dd7fd2b721a8a4b169428c0da510be6f3c240d5718f4782709a8598
7
- data.tar.gz: ce9812073272c2be48c19b0ea757ae91229ca9800c9263a58676d727013b1c0b5e81b5d67f9b5452cd95b83b19b12cdc2c45ff503a04ac7e4512884c129cc03b
6
+ metadata.gz: 9ac047cd7af2528d324b5176ab6ca681742904e01a4b53e862715f70bce001ac084014e62787ec31c221919515dfbff375792c96617a6e0ee39a162f2ac7c6a7
7
+ data.tar.gz: 3d2c9ffcc8cfb6d5122a6b5f496f26c42d2383e980ed634fa4e0294d93db175d085fefb7f47e385936cfcce5d53838933219afc09c7b571de25e106c251bdba8
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- keytechkit (0.3.15)
4
+ keytechkit (0.3.16)
5
5
  httparty (~> 0.16)
6
6
 
7
7
  GEM
@@ -50,7 +50,7 @@ GEM
50
50
  tzinfo (~> 1.1)
51
51
  arel (9.0.0)
52
52
  builder (3.2.3)
53
- concurrent-ruby (1.1.2)
53
+ concurrent-ruby (1.1.3)
54
54
  crass (1.0.4)
55
55
  diff-lcs (1.3)
56
56
  erubi (1.7.1)
data/README.md CHANGED
@@ -29,7 +29,22 @@ Refactors will be also made on any time even on minor version change.
29
29
  To use this gem have a look in the /spec folder. Every function should be tested.
30
30
  You can grab code here and add this to you own projects.
31
31
 
32
- Documentation with code samples will come in the next days.
32
+ ```ruby
33
+ keytech_kit = KeytechKit::KeytechKit.new(keytech_url, keytech_username, keytech_password)
34
+
35
+ # Perform a fulltext search (q), group results by its class, and sort by
36
+ # creation date
37
+ options = { q: params[:q],
38
+ groupBy: 'classkey',
39
+ classes: params[:classes],
40
+ attributes: 'lister',
41
+ sortBy: 'created_at' }
42
+
43
+ @search_results = keytech_kit.search.query(options)
44
+ ```
45
+
46
+ Full documentation with code samples will come in the next days.
47
+ Latest gem documentation for keytechAPI gem is on [rubydoc](https://www.rubydoc.info/gems/keytechkit)
33
48
 
34
49
  ## Development
35
50
 
data/lib/keytechKit.rb CHANGED
@@ -20,6 +20,7 @@ module KeytechKit
20
20
  attr_reader :base_url
21
21
  attr_reader :username
22
22
  attr_reader :password
23
+
23
24
 
24
25
  # Initializes this class
25
26
  # user +baseurl+, +username+ and +password+ to start accessing all other
@@ -4,6 +4,7 @@ require 'keytechKit/classes/layout/layout'
4
4
  module KeytechKit
5
5
  class Layouts
6
6
  include HTTParty
7
+ default_timeout 10
7
8
 
8
9
  def initialize(base_url, username, password)
9
10
  self.class.base_uri(base_url)
@@ -12,15 +13,15 @@ module KeytechKit
12
13
 
13
14
  def header_layout(classkey)
14
15
  # Ab keytedch 14!
15
- load_layout(classkey, {"layoutType": "HeaderLayout"})
16
+ load_layout(classkey, {layoutType: "HeaderLayout"})
16
17
  end
17
18
 
18
19
  def main_layout(classkey)
19
- load_layout(classkey, {"layoutType": "DefaultLayout"})
20
+ load_layout(classkey, {layoutType: "DefaultLayout"})
20
21
  end
21
22
 
22
23
  def explorer_layout(classkey)
23
- load_layout(classkey, {"layoutType": "ExplorerLayout"})
24
+ load_layout(classkey, {layoutType: "ExplorerLayout"})
24
25
  end
25
26
 
26
27
  def lister_layout(classkey)
@@ -3,7 +3,7 @@ require 'keytechKit/elements/data_dictionary/data_dictionary_definition'
3
3
  module KeytechKit
4
4
  class DataDictionaryHandler
5
5
  include HTTParty
6
-
6
+ default_timeout 10
7
7
  attr_accessor :keytechkit
8
8
 
9
9
  def initialize(keytechkit, base_url, username, password)
@@ -26,26 +26,34 @@ module KeytechKit
26
26
  attr_accessor :description
27
27
 
28
28
  def initialize(data)
29
- self.key = data['Key']
30
- self.name = data['Name']
29
+ @key = data['Key']
30
+ @name = data['Name']
31
31
  set_key_value_list(data['KeyValueList'])
32
32
 
33
- self.displayname = data['DisplayName']
34
- self.classDisplayName = data['ClassDisplayName']
35
- self.version = data['Version']
36
- self.status = data['Status']
37
- self.description = data['Description']
38
33
 
39
- self.changedBy = data['ChangedBy']
40
- self.changedByLong = data['ChangedByLong']
41
- self.changedAt = data['ChangedAt']
34
+ @classDisplayName = data['ClassDisplayName']
35
+ @version = data['Version']
36
+ @status = data['Status']
37
+ @description = data['Description']
42
38
 
43
- self.createdBy = data['CreatedBy']
44
- self.createdByLong = data['CreatedByLong']
45
- self.createdAt = data['CreatedAt']
39
+ @changedBy = data['ChangedBy']
40
+ @changedByLong = data['ChangedByLong']
41
+ @changedAt = data['ChangedAt']
46
42
 
47
- self.thumbnailHint = data['ThumbnailHint']
48
- self.hasVersions = data['HasVersions']
43
+ @createdBy = data['CreatedBy']
44
+ @createdByLong = data['CreatedByLong']
45
+ @createdAt = data['CreatedAt']
46
+
47
+ @thumbnailHint = data['ThumbnailHint']
48
+ @hasVersions = data['HasVersions']
49
+
50
+ class_key = Tools.class_key(@key)
51
+ project_classes = %w[TASK_WF MAIL_WF]
52
+ @displayname = if project_classes.include?(class_key)
53
+ data['Subject']
54
+ else
55
+ data['DisplayName']
56
+ end
49
57
  end
50
58
 
51
59
  def to_hash
@@ -70,7 +78,7 @@ module KeytechKit
70
78
  private
71
79
 
72
80
  def set_key_value_list(kv_data)
73
- self.keyValueList = ({})
81
+ @keyValueList = ({})
74
82
  if kv_data
75
83
  kv_data.each do |kvPair|
76
84
  keyValueList[kvPair['Key'].to_s] = kvPair['Value']
@@ -6,6 +6,7 @@ module KeytechKit
6
6
  # Element File handler
7
7
  class ElementFileHandler
8
8
  include HTTParty
9
+ default_timeout 10
9
10
 
10
11
  def initialize(base_url, username, password)
11
12
  self.class.base_uri(base_url)
@@ -14,7 +15,7 @@ module KeytechKit
14
15
 
15
16
  # Returns true or false if a masterfile exist
16
17
  def masterfile?(element_key)
17
- if Tools.classType(element_key) == 'DO' # Only DO Types can have a file
18
+ if Tools.class_type(element_key) == 'DO' # Only DO Types can have a file
18
19
  file_list = load(element_key)
19
20
  unless file_list.nil?
20
21
  file_list.each do |file|
@@ -27,7 +28,7 @@ module KeytechKit
27
28
 
28
29
  # Returns information about masterfile
29
30
  def masterfile_info(element_key)
30
- if Tools.classType(element_key) == 'DO' # Only DO Types can have a file
31
+ if Tools.class_type(element_key) == 'DO' # Only DO Types can have a file
31
32
  file_list = load(element_key)
32
33
  unless file_list.nil?
33
34
  file_list.each do |file|
@@ -7,6 +7,7 @@ module KeytechKit
7
7
  # All operations for a element is here
8
8
  class ElementHandler
9
9
  include HTTParty
10
+ default_timeout 10
10
11
 
11
12
  attr_accessor :keytechkit
12
13
 
@@ -5,6 +5,7 @@ module KeytechKit
5
5
  # Notes
6
6
  class NoteHandler
7
7
  include HTTParty
8
+ default_timeout 10
8
9
 
9
10
  def initialize(base_url, username, password)
10
11
  self.class.base_uri(base_url)
@@ -9,6 +9,7 @@ module KeytechKit
9
9
  # Can group the results
10
10
  class Search
11
11
  include HTTParty
12
+ default_timeout 10
12
13
 
13
14
  attr_accessor :response
14
15
 
@@ -5,6 +5,7 @@ module KeytechKit
5
5
  # Serverinfo Handler
6
6
  class ServerInfoHandler
7
7
  include HTTParty
8
+ default_timeout 10
8
9
 
9
10
  def initialize(keytechkit, base_url)
10
11
  self.class.base_uri(base_url)
@@ -1,12 +1,13 @@
1
1
  class Tools
2
+
2
3
  # Returns a classkey (MISC_FILE) from a elementkey (MISC_FILE:1234)
3
- def self.classKey(element_key)
4
+ def self.class_key(element_key)
4
5
  element_key.split(':').first
5
6
  end
6
7
 
7
8
  # Return a classkey (MI, FD, DO) from a elementkey (MISC_FILE:!234)
8
- def self.classType(element_key)
9
- classKey = self.classKey(element_key)
9
+ def self.class_type(element_key)
10
+ classKey = self.class_key(element_key)
10
11
  return 'MI' if classKey.upcase.end_with?('_MI')
11
12
  return 'FD' if classKey.end_with?('_FD', '_WF')
12
13
  'DO'
@@ -1,5 +1,5 @@
1
1
  module KeytechKit
2
- VERSION = '0.3.16'
2
+ VERSION = '0.3.17'
3
3
 
4
4
  # Public available Demo URL for testing and dsevelopment
5
5
  DEMO_URL = 'https://demo.keytech.de'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: keytechkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.16
4
+ version: 0.3.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thorsten Claus
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-08 00:00:00.000000000 Z
11
+ date: 2018-11-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler