Apatite 0.0.1.pre → 0.0.2.pre

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/Apatite.rb +26 -41
  3. data/Data/Redis.rb +6 -2
  4. metadata +46 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4864bea9319b626e3d6436e84cc859961cc1f522b14afd2e3d8a164aef443bcd
4
- data.tar.gz: dd49f2c7d9736aa6d4cd5b42123ccedf4766afd342f0ac5f37afa7841f6d83d7
3
+ metadata.gz: cdfcb3d39d1e38c42804288e83ae194c5ab1ad488bf3e732b22cfc720a60d5c8
4
+ data.tar.gz: 12fc2ff98d0abe2fbf86342d888ebba1d7418bc04c39dc55dc5e9d979fe46f9f
5
5
  SHA512:
6
- metadata.gz: 8cf5f335fbb9177a928174646ca829ac5c40a6dc15290a459344df6c8d68fb705440fdea94c6e045a6b344bcfa6d30dd58f7ae8cf26bd4ac4711a66bdfac85bc
7
- data.tar.gz: 6b5563be7ec6ad70285dad035bd8abc7da1017d34f5ccd9d6039bfc5921ee1e2366724e0e4b4a522b0cdf5fe5ce371fc01a2a5d454c4f5152899c6950f53fe2a
6
+ metadata.gz: 210709c0b4c94f87b604e610cbabce24fc31dc3c9d852bc079f14ed1beaac66c4e2f2b11bd8e972072a4a947f278b453900186164a21fe76291de232e0337d12
7
+ data.tar.gz: 8b9c71d3cc95814a107f5674aed0c98a3017c70447befeb1c1ada70625db89a175f5dc9789438e086932db8c1b88e91fc65bb882202bd1f559462bfcaad3824a
data/Apatite.rb CHANGED
@@ -1,49 +1,34 @@
1
1
  require 'rack'
2
- require 'Data/Redis.rb'
3
- require 'Action.rb'
2
+ require_relative 'Data/Redis.rb'
3
+ require_relative 'Action.rb'
4
4
 
5
5
  class Apatite
6
- @app = nil
7
- @redis = Redis.new(@redisURL, @SENTINELS, @role)
8
- @redisURL = nil
9
- @SENTINELS = nil
10
- @role = nil
11
- # Initializes the class
12
- # @param URL
13
- # Redis URL
14
- # @param SENTINELS
15
- # Redis SENTINELS
16
- # @param role
17
- # Redis role
18
- def initialize(URL, SENTINELS=nil, role=:master)
19
- @redisURL = URL
20
- @SENTINELS = SENTINELS
21
- @role = role
6
+ # Initialize application
7
+ def initialize(url=nil,senitels=nil,role=nil)
8
+ @routes = {}
9
+ @redis = Redis.new(:url => url,:senitels => senitels,:role => role)
22
10
  end
23
- def self.app
24
- @app ||= begin
25
- Rack::Builder.new do
26
- map "/" do
27
- run ->(env) {[200, {'Content-Type' => 'text/plain'}, ['Witaj!']] }
28
- end
29
- end
11
+ # Add Route
12
+ # @param http_method
13
+ # GET, POST, PUT, DELETE, PATCH
14
+ # @param path
15
+ # url path
16
+ # @param redirects
17
+ # HTML meta location
18
+ # @param block
19
+ # Route content goes here
20
+ def add_route(http_method, path, redirects={}, &block)
21
+ response = Rack::Response.new
22
+ response.body = block
23
+ if redirects[:location]
24
+ response.headers[“Location”] = redirects[:location]
25
+ response.status = ‘302’
30
26
  end
27
+ @routes[[http_method, path]] = [response.status, response.headers, [response.body]]
31
28
  end
32
- # Call function
33
29
  def call(env)
34
- [200, {"Content-Type" => "text/html"}, ["Witaj!"]]
30
+ Action.new(do
31
+ @routes[[env['REQUEST_METHOD'],env['REQUEST_PATH']]]
32
+ end).call(env)
35
33
  end
36
- end
37
- # Creates a route
38
- def route(pattern, &block)
39
- Apatite.app.map(pattern) do
40
- run Action.new(&block)
41
- end
42
- end
43
-
44
- # To create a route use
45
- # apatite = Apatite.new
46
- # route("/example") do
47
- # "Hello"
48
- # end
49
- # run apatite.app
34
+ end
@@ -7,12 +7,16 @@ class Redis
7
7
  @url = nil
8
8
  @SENTINELS = nil
9
9
  @role = nil
10
- def initialize(URL, SENTINELS, role=:master)
10
+ def initialize(url, sentinels=nil, role=:master)
11
11
  @url = URL
12
12
  @SENTINELS = SENTINELS
13
13
  @role = role
14
14
  end
15
15
  # Redis set
16
+ # @param key
17
+ # Key of the value
18
+ # @param value
19
+ # Value to be set
16
20
  def set(key, value)
17
21
  @redis.set(key, value)
18
22
  end
@@ -24,7 +28,7 @@ class Redis
24
28
  def get(key)
25
29
  return @redis.get(key)
26
30
  end
27
- # Redis set but value is converted from JSON
31
+ # Redis get but value is converted from JSON
28
32
  def getJSON(key)
29
33
  return JSON.parse(@redis.get(key))
30
34
  end
metadata CHANGED
@@ -1,15 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Apatite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.pre
4
+ version: 0.0.2.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - VirtualFox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-21 00:00:00.000000000 Z
12
- dependencies: []
11
+ date: 2018-04-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: redis
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 4.0.1
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '4.0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 4.0.1
33
+ - !ruby/object:Gem::Dependency
34
+ name: rack
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '2.0'
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: 2.0.4
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '2.0'
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: 2.0.4
13
53
  description:
14
54
  email:
15
55
  executables: []
@@ -22,7 +62,9 @@ files:
22
62
  homepage:
23
63
  licenses:
24
64
  - NGPL
25
- metadata: {}
65
+ metadata:
66
+ source_code_uri: https://gitlab.com/Kuba663/Apatite.git
67
+ source_code_ssh: git@gitlab.com:Kuba663/Apatite.git
26
68
  post_install_message:
27
69
  rdoc_options: []
28
70
  require_paths: