soql_builder 1.0.7 → 1.0.8

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
  SHA256:
3
- metadata.gz: 4fec9b88d7c0f5058efaa40ba1e8ffcee51deb04d4c35b23b06f7c66eef1d592
4
- data.tar.gz: 44ee7df2bbed7541d7b73cf36542556b115e362f23a5241848c1fe9b9b124240
3
+ metadata.gz: d8d14dbf2824a0f8c671f65f401f7d906799b1002ebf6f2f0f9f052af1a5a6fd
4
+ data.tar.gz: b2e297cc77be7e55221fbc232f4ee7f4c9747c152e7270038d216cf6dfc75068
5
5
  SHA512:
6
- metadata.gz: 7bd972ce802d352af0d2e5559739f309b56fde0820291020901ec07b53264d3c4a06037bc2a008ca2f742976df3487137df0b9a330013fe54305641316de9946
7
- data.tar.gz: f7bdd7a18dfdabb6918d22ac29067ff15baf727fd6dcbf9c1be1a78c211e73267937653f80eca8c2a3adc5e7778eea39f904df5ea124073e157da581bd299ebd
6
+ metadata.gz: 160a72383e1346bb941e4ccccef507f609adb6cd989ee36240c6ba493a90c75c0d4dfe383f97c25fd0a36ed55b76afaf0793ff2e3aee330423f17469dba72dbe
7
+ data.tar.gz: 356133212d1ada277a09af0415be24e8c280da12f3d6e214067a93502afcfcfd34b56a0cb45e97a822fc1d431e6d9a414a73e893a71b2b12c10c567b18bedf2e
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'soql_builder/query'
4
+
5
+ module SoqlBuilder
6
+ class Interface
7
+ def initialize(type:, query: nil)
8
+ @query = query || SoqlBuilder::Query.new
9
+ @type = type
10
+ @fields = []
11
+ @subqueries = []
12
+ @subquery = { object_table: '', fields: [] }
13
+ @object_table = ''
14
+ @where = ''
15
+ @limit = ''
16
+ end
17
+
18
+ def query
19
+ @query.structure_query(
20
+ type: @type,
21
+ fields: @fields,
22
+ subqueries: @subqueries,
23
+ object_table: @object_table,
24
+ where: @where,
25
+ limit: @limit
26
+ )
27
+ end
28
+
29
+ def clean
30
+ @fields = []
31
+ @subqueries = []
32
+ @object_table = ''
33
+ @where = ''
34
+ @limit = ''
35
+ end
36
+
37
+ def fields(fields = [])
38
+ @fields = fields
39
+ self
40
+ end
41
+
42
+ def add_subquery(table:, fields: [])
43
+ @subquery = { object_table: table, fields: fields }
44
+ @subqueries << @subquery
45
+ self
46
+ end
47
+
48
+ def from(table)
49
+ @object_table = table
50
+ self
51
+ end
52
+
53
+ def where(where_condition)
54
+ @where = where_condition
55
+ self
56
+ end
57
+
58
+ def limit(limit_number)
59
+ @limit = limit_number.to_s
60
+ end
61
+ end
62
+ end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Soql
3
+ module SoqlBuilder
4
4
  class Query
5
5
  TYPES = {
6
6
  select: 'select'
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SoqlBuilder
4
+ VERSION = '1.0.8'.freeze
5
+ end
data/lib/soql_builder.rb CHANGED
@@ -1,60 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'soql/query'
3
+ require 'soql_builder/interface'
4
4
 
5
- class SoqlBuilder
6
- def initialize(type:, query: nil)
7
- @query = query || Soql::Query.new
8
- @type = type
9
- @fields = []
10
- @subqueries = []
11
- @subquery = { object_table: '', fields: [] }
12
- @object_table = ''
13
- @where = ''
14
- @limit = ''
15
- end
16
-
17
- def query
18
- @query.structure_query(
19
- type: @type,
20
- fields: @fields,
21
- subqueries: @subqueries,
22
- object_table: @object_table,
23
- where: @where,
24
- limit: @limit
25
- )
26
- end
27
-
28
- def clean
29
- @fields = []
30
- @subqueries = []
31
- @object_table = ''
32
- @where = ''
33
- @limit = ''
34
- end
35
-
36
- def fields(fields = [])
37
- @fields = fields
38
- self
39
- end
40
-
41
- def add_subquery(table:, fields: [])
42
- @subquery = { object_table: table, fields: fields }
43
- @subqueries << @subquery
44
- self
45
- end
46
-
47
- def from(table)
48
- @object_table = table
49
- self
50
- end
51
-
52
- def where(where_condition)
53
- @where = where_condition
54
- self
55
- end
5
+ module SoqlBuilder
6
+ class << self
7
+ def new(type:, query: nil)
8
+ @interface = Interface.new(type: type, query: query)
9
+ end
56
10
 
57
- def limit(limit_number)
58
- @limit = limit_number.to_s
11
+ attr_reader :interface
59
12
  end
60
13
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: soql_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Avlonitis
@@ -31,9 +31,10 @@ extensions: []
31
31
  extra_rdoc_files: []
32
32
  files:
33
33
  - README.md
34
- - lib/soql/query.rb
35
- - lib/soql/version.rb
36
34
  - lib/soql_builder.rb
35
+ - lib/soql_builder/interface.rb
36
+ - lib/soql_builder/query.rb
37
+ - lib/soql_builder/version.rb
37
38
  homepage: https://github.com/AlexAvlonitis/soql-builder
38
39
  licenses:
39
40
  - MIT
data/lib/soql/version.rb DELETED
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Soql
4
- VERSION = '1.0.7'.freeze
5
- end