microsoft_graph 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +11 -11
- data/.rspec +2 -2
- data/.travis.yml +4 -4
- data/Gemfile +4 -4
- data/LICENSE +10 -10
- data/README.md +99 -98
- data/Rakefile +7 -7
- data/data/metadata_v1.0.xml +1686 -1686
- data/integration_spec/integration_spec_helper.rb +18 -18
- data/integration_spec/live_spec.rb +180 -180
- data/lib/microsoft_graph.rb +35 -35
- data/lib/microsoft_graph/base.rb +110 -110
- data/lib/microsoft_graph/base_entity.rb +152 -152
- data/lib/microsoft_graph/cached_metadata_directory.rb +3 -3
- data/lib/microsoft_graph/class_builder.rb +217 -217
- data/lib/microsoft_graph/collection.rb +95 -95
- data/lib/microsoft_graph/collection_association.rb +232 -232
- data/lib/microsoft_graph/errors.rb +6 -6
- data/lib/microsoft_graph/version.rb +3 -3
- data/lib/odata.rb +49 -49
- data/lib/odata/entity_set.rb +20 -20
- data/lib/odata/errors.rb +18 -18
- data/lib/odata/navigation_property.rb +30 -30
- data/lib/odata/operation.rb +17 -17
- data/lib/odata/property.rb +38 -38
- data/lib/odata/request.rb +49 -49
- data/lib/odata/service.rb +279 -279
- data/lib/odata/singleton.rb +20 -20
- data/lib/odata/type.rb +25 -25
- data/lib/odata/types/collection_type.rb +30 -30
- data/lib/odata/types/complex_type.rb +19 -19
- data/lib/odata/types/entity_type.rb +33 -33
- data/lib/odata/types/enum_type.rb +37 -37
- data/lib/odata/types/primitive_type.rb +12 -12
- data/lib/odata/types/primitive_types/binary_type.rb +15 -15
- data/lib/odata/types/primitive_types/boolean_type.rb +15 -15
- data/lib/odata/types/primitive_types/date_time_offset_type.rb +15 -15
- data/lib/odata/types/primitive_types/date_type.rb +23 -23
- data/lib/odata/types/primitive_types/double_type.rb +16 -16
- data/lib/odata/types/primitive_types/guid_type.rb +24 -24
- data/lib/odata/types/primitive_types/int_16_type.rb +19 -19
- data/lib/odata/types/primitive_types/int_32_type.rb +15 -15
- data/lib/odata/types/primitive_types/int_64_type.rb +15 -15
- data/lib/odata/types/primitive_types/stream_type.rb +15 -15
- data/lib/odata/types/primitive_types/string_type.rb +15 -15
- data/microsoft_graph-0.1.2.gem +0 -0
- data/microsoft_graph.gemspec +31 -31
- data/tasks/update_metadata.rb +17 -17
- metadata +6 -6
- data/microsoft_graph-0.1.0.gem +0 -0
@@ -1,23 +1,23 @@
|
|
1
|
-
module OData
|
2
|
-
class DateType < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
Date === value
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
begin
|
9
|
-
if Date === value
|
10
|
-
value
|
11
|
-
else
|
12
|
-
Date.parse(value.to_s)
|
13
|
-
end
|
14
|
-
rescue ArgumentError
|
15
|
-
raise TypeError.new("Cannot convert #{value.inspect} into a date")
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
def name
|
20
|
-
"Edm.Date"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
1
|
+
module OData
|
2
|
+
class DateType < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
Date === value
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
begin
|
9
|
+
if Date === value
|
10
|
+
value
|
11
|
+
else
|
12
|
+
Date.parse(value.to_s)
|
13
|
+
end
|
14
|
+
rescue ArgumentError
|
15
|
+
raise TypeError.new("Cannot convert #{value.inspect} into a date")
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def name
|
20
|
+
"Edm.Date"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -1,16 +1,16 @@
|
|
1
|
-
module OData
|
2
|
-
class DoubleType < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
Numeric === value
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
raise TypeError.new("Cannot convert #{value.inspect} into a float") unless value.respond_to? :to_f
|
9
|
-
value.to_f
|
10
|
-
end
|
11
|
-
|
12
|
-
def name
|
13
|
-
"Edm.Double"
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
1
|
+
module OData
|
2
|
+
class DoubleType < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
Numeric === value
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
raise TypeError.new("Cannot convert #{value.inspect} into a float") unless value.respond_to? :to_f
|
9
|
+
value.to_f
|
10
|
+
end
|
11
|
+
|
12
|
+
def name
|
13
|
+
"Edm.Double"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -1,24 +1,24 @@
|
|
1
|
-
module OData
|
2
|
-
class GuidType < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
String === value
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
case value
|
9
|
-
when Symbol
|
10
|
-
value.to_s
|
11
|
-
when Numeric
|
12
|
-
value.to_s
|
13
|
-
when String
|
14
|
-
value
|
15
|
-
else
|
16
|
-
raise TypeError, "Cannot convert #{value.inspect} into a Guid"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
def name
|
21
|
-
"Edm.Guid"
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
1
|
+
module OData
|
2
|
+
class GuidType < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
String === value
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
case value
|
9
|
+
when Symbol
|
10
|
+
value.to_s
|
11
|
+
when Numeric
|
12
|
+
value.to_s
|
13
|
+
when String
|
14
|
+
value
|
15
|
+
else
|
16
|
+
raise TypeError, "Cannot convert #{value.inspect} into a Guid"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def name
|
21
|
+
"Edm.Guid"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -1,19 +1,19 @@
|
|
1
|
-
module OData
|
2
|
-
class Int16Type < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
Integer === value &&
|
5
|
-
value <= 2**15 &&
|
6
|
-
value > -(2**15)
|
7
|
-
end
|
8
|
-
|
9
|
-
def coerce(value)
|
10
|
-
val = value.respond_to?(:to_i) ? value.to_i : value
|
11
|
-
raise TypeError, "Cannot convert #{value.inspect} into an Int16" unless valid_value?(val)
|
12
|
-
val
|
13
|
-
end
|
14
|
-
|
15
|
-
def name
|
16
|
-
"Edm.Int16"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
1
|
+
module OData
|
2
|
+
class Int16Type < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
Integer === value &&
|
5
|
+
value <= 2**15 &&
|
6
|
+
value > -(2**15)
|
7
|
+
end
|
8
|
+
|
9
|
+
def coerce(value)
|
10
|
+
val = value.respond_to?(:to_i) ? value.to_i : value
|
11
|
+
raise TypeError, "Cannot convert #{value.inspect} into an Int16" unless valid_value?(val)
|
12
|
+
val
|
13
|
+
end
|
14
|
+
|
15
|
+
def name
|
16
|
+
"Edm.Int16"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -1,15 +1,15 @@
|
|
1
|
-
module OData
|
2
|
-
class Int32Type < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
Integer === value
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
value.to_i
|
9
|
-
end
|
10
|
-
|
11
|
-
def name
|
12
|
-
"Edm.Int32"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
1
|
+
module OData
|
2
|
+
class Int32Type < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
Integer === value
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
value.to_i
|
9
|
+
end
|
10
|
+
|
11
|
+
def name
|
12
|
+
"Edm.Int32"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,15 +1,15 @@
|
|
1
|
-
module OData
|
2
|
-
class Int64Type < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
Integer === value
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
value.to_i
|
9
|
-
end
|
10
|
-
|
11
|
-
def name
|
12
|
-
"Edm.Int64"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
1
|
+
module OData
|
2
|
+
class Int64Type < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
Integer === value
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
value.to_i
|
9
|
+
end
|
10
|
+
|
11
|
+
def name
|
12
|
+
"Edm.Int64"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,15 +1,15 @@
|
|
1
|
-
module OData
|
2
|
-
class StreamType < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
true
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
raise RuntimeError
|
9
|
-
end
|
10
|
-
|
11
|
-
def name
|
12
|
-
"Edm.Stream"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
1
|
+
module OData
|
2
|
+
class StreamType < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
true
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
raise RuntimeError
|
9
|
+
end
|
10
|
+
|
11
|
+
def name
|
12
|
+
"Edm.Stream"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,15 +1,15 @@
|
|
1
|
-
module OData
|
2
|
-
class StringType < PrimitiveType
|
3
|
-
def valid_value?(value)
|
4
|
-
String === value
|
5
|
-
end
|
6
|
-
|
7
|
-
def coerce(value)
|
8
|
-
value.to_s
|
9
|
-
end
|
10
|
-
|
11
|
-
def name
|
12
|
-
"Edm.String"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
1
|
+
module OData
|
2
|
+
class StringType < PrimitiveType
|
3
|
+
def valid_value?(value)
|
4
|
+
String === value
|
5
|
+
end
|
6
|
+
|
7
|
+
def coerce(value)
|
8
|
+
value.to_s
|
9
|
+
end
|
10
|
+
|
11
|
+
def name
|
12
|
+
"Edm.String"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
Binary file
|
data/microsoft_graph.gemspec
CHANGED
@@ -1,31 +1,31 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require 'microsoft_graph/version'
|
5
|
-
|
6
|
-
Gem::Specification.new do |spec|
|
7
|
-
spec.name = "microsoft_graph"
|
8
|
-
spec.version = MicrosoftGraph::VERSION
|
9
|
-
spec.authors = ["Katie Miller", "Neal Lindsay"]
|
10
|
-
spec.email = ["katie@testdouble.com", "neal@testdouble.com"]
|
11
|
-
|
12
|
-
spec.summary = "Ruby SDK for Microsoft Graph"
|
13
|
-
spec.homepage = "https://graph.microsoft.io"
|
14
|
-
|
15
|
-
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
16
|
-
spec.bindir = "exe"
|
17
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
18
|
-
spec.require_paths = ["lib"]
|
19
|
-
|
20
|
-
spec.add_development_dependency "bundler", "~> 1.11"
|
21
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
22
|
-
spec.add_development_dependency "rspec", "~> 3.0"
|
23
|
-
spec.add_development_dependency "rspec-given", "~> 3.5.0"
|
24
|
-
spec.add_development_dependency "adal", "~> 1.0"
|
25
|
-
spec.add_development_dependency "dotenv", "~> 2.0.2"
|
26
|
-
spec.add_development_dependency "pry", "~> 0.10.3"
|
27
|
-
spec.add_development_dependency "simplecov", "~> 0.11.1"
|
28
|
-
spec.add_development_dependency "webmock", "~> 1.22.6"
|
29
|
-
|
30
|
-
spec.add_dependency "nokogiri", "~> 1.
|
31
|
-
end
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'microsoft_graph/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "microsoft_graph"
|
8
|
+
spec.version = MicrosoftGraph::VERSION
|
9
|
+
spec.authors = ["Katie Miller", "Neal Lindsay"]
|
10
|
+
spec.email = ["katie@testdouble.com", "neal@testdouble.com"]
|
11
|
+
|
12
|
+
spec.summary = "Ruby SDK for Microsoft Graph"
|
13
|
+
spec.homepage = "https://graph.microsoft.io"
|
14
|
+
|
15
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
16
|
+
spec.bindir = "exe"
|
17
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
18
|
+
spec.require_paths = ["lib"]
|
19
|
+
|
20
|
+
spec.add_development_dependency "bundler", "~> 1.11"
|
21
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
22
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
23
|
+
spec.add_development_dependency "rspec-given", "~> 3.5.0"
|
24
|
+
spec.add_development_dependency "adal", "~> 1.0"
|
25
|
+
spec.add_development_dependency "dotenv", "~> 2.0.2"
|
26
|
+
spec.add_development_dependency "pry", "~> 0.10.3"
|
27
|
+
spec.add_development_dependency "simplecov", "~> 0.11.1"
|
28
|
+
spec.add_development_dependency "webmock", "~> 1.22.6"
|
29
|
+
|
30
|
+
spec.add_dependency "nokogiri", "~> 1.8.0"
|
31
|
+
end
|
data/tasks/update_metadata.rb
CHANGED
@@ -1,17 +1,17 @@
|
|
1
|
-
require 'rexml/document'
|
2
|
-
|
3
|
-
desc "Update Graph API description file (optionally specify VERSION environment variable - defaults to \"v1.0\")"
|
4
|
-
task :update_metadata do
|
5
|
-
version = ENV['VERSION'] || "v1.0"
|
6
|
-
file_name = File.absolute_path File.join(__FILE__, "../../data/metadata_#{version}.xml")
|
7
|
-
uri = URI("https://graph.microsoft.com/#{version}/$metadata?detailed=true")
|
8
|
-
xml = Net::HTTP
|
9
|
-
.new(uri.hostname, uri.port)
|
10
|
-
.tap { |h| h.use_ssl = uri.scheme == "https" }
|
11
|
-
.get(uri).body
|
12
|
-
doc = REXML::Document.new(xml)
|
13
|
-
File.open(file_name, 'w') do |f|
|
14
|
-
puts "writing to #{file_name}"
|
15
|
-
doc.write f, 2
|
16
|
-
end
|
17
|
-
end
|
1
|
+
require 'rexml/document'
|
2
|
+
|
3
|
+
desc "Update Graph API description file (optionally specify VERSION environment variable - defaults to \"v1.0\")"
|
4
|
+
task :update_metadata do
|
5
|
+
version = ENV['VERSION'] || "v1.0"
|
6
|
+
file_name = File.absolute_path File.join(__FILE__, "../../data/metadata_#{version}.xml")
|
7
|
+
uri = URI("https://graph.microsoft.com/#{version}/$metadata?detailed=true")
|
8
|
+
xml = Net::HTTP
|
9
|
+
.new(uri.hostname, uri.port)
|
10
|
+
.tap { |h| h.use_ssl = uri.scheme == "https" }
|
11
|
+
.get(uri).body
|
12
|
+
doc = REXML::Document.new(xml)
|
13
|
+
File.open(file_name, 'w') do |f|
|
14
|
+
puts "writing to #{file_name}"
|
15
|
+
doc.write f, 2
|
16
|
+
end
|
17
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: microsoft_graph
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katie Miller
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2017-06-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -143,14 +143,14 @@ dependencies:
|
|
143
143
|
requirements:
|
144
144
|
- - "~>"
|
145
145
|
- !ruby/object:Gem::Version
|
146
|
-
version: 1.
|
146
|
+
version: 1.8.0
|
147
147
|
type: :runtime
|
148
148
|
prerelease: false
|
149
149
|
version_requirements: !ruby/object:Gem::Requirement
|
150
150
|
requirements:
|
151
151
|
- - "~>"
|
152
152
|
- !ruby/object:Gem::Version
|
153
|
-
version: 1.
|
153
|
+
version: 1.8.0
|
154
154
|
description:
|
155
155
|
email:
|
156
156
|
- katie@testdouble.com
|
@@ -204,7 +204,7 @@ files:
|
|
204
204
|
- lib/odata/types/primitive_types/int_64_type.rb
|
205
205
|
- lib/odata/types/primitive_types/stream_type.rb
|
206
206
|
- lib/odata/types/primitive_types/string_type.rb
|
207
|
-
- microsoft_graph-0.1.
|
207
|
+
- microsoft_graph-0.1.2.gem
|
208
208
|
- microsoft_graph.gemspec
|
209
209
|
- tasks/update_metadata.rb
|
210
210
|
homepage: https://graph.microsoft.io
|
@@ -226,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
226
226
|
version: '0'
|
227
227
|
requirements: []
|
228
228
|
rubyforge_project:
|
229
|
-
rubygems_version: 2.
|
229
|
+
rubygems_version: 2.6.6
|
230
230
|
signing_key:
|
231
231
|
specification_version: 4
|
232
232
|
summary: Ruby SDK for Microsoft Graph
|