Module: WireBridge

Defined in:
lib/wirebridge.rb

Defined Under Namespace

Modules: Rails, Sinatra Classes: Client, Middleware

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.array_of(items, required: true, description: nil) ⇒ Object



62
63
64
65
66
# File 'lib/wirebridge.rb', line 62

def self.array_of(items, required: true, description: nil)
  s = { type: "array", required: required, items: items }
  s[:description] = description if description
  s
end

.boolean(required: true, description: nil) ⇒ Object



50
51
52
53
54
# File 'lib/wirebridge.rb', line 50

def self.boolean(required: true, description: nil)
  s = { type: "boolean", required: required }
  s[:description] = description if description
  s
end

.number(required: true, description: nil, example: nil) ⇒ Object



44
45
46
47
48
# File 'lib/wirebridge.rb', line 44

def self.number(required: true, description: nil, example: nil)
  s = { type: "number", required: required }
  s[:description] = description if description
  s
end

.object_of(properties, required: true, description: nil) ⇒ Object



56
57
58
59
60
# File 'lib/wirebridge.rb', line 56

def self.object_of(properties, required: true, description: nil)
  s = { type: "object", required: required, properties: properties }
  s[:description] = description if description
  s
end

.optional(schema) ⇒ Object



68
69
70
# File 'lib/wirebridge.rb', line 68

def self.optional(schema)
  schema.merge(required: false)
end

.string(required: true, description: nil, example: nil) ⇒ Object

─── SCHEMA HELPERS ─────────────────────────────────────────────────────────



37
38
39
40
41
42
# File 'lib/wirebridge.rb', line 37

def self.string(required: true, description: nil, example: nil)
  s = { type: "string", required: required }
  s[:description] = description if description
  s[:example] = example if example
  s
end