Module: Frodo

Defined in:
lib/frodo.rb,
lib/frodo/query.rb,
lib/frodo/client.rb,
lib/frodo/config.rb,
lib/frodo/entity.rb,
lib/frodo/schema.rb,
lib/frodo/railtie.rb,
lib/frodo/service.rb,
lib/frodo/version.rb,
lib/frodo/property.rb,
lib/frodo/entity_set.rb,
lib/frodo/middleware.rb,
lib/frodo/concerns/api.rb,
lib/frodo/concerns/base.rb,
lib/frodo/concerns/verbs.rb,
lib/frodo/query/criteria.rb,
lib/frodo/abstract_client.rb,
lib/frodo/middleware/gzip.rb,
lib/frodo/properties/date.rb,
lib/frodo/properties/enum.rb,
lib/frodo/properties/guid.rb,
lib/frodo/properties/time.rb,
lib/frodo/concerns/caching.rb,
lib/frodo/entity_container.rb,
lib/frodo/properties/float.rb,
lib/frodo/query/in_batches.rb,
lib/frodo/schema/enum_type.rb,
lib/frodo/service_registry.rb,
lib/frodo/middleware/logger.rb,
lib/frodo/properties/binary.rb,
lib/frodo/properties/number.rb,
lib/frodo/properties/string.rb,
lib/frodo/property_registry.rb,
lib/frodo/middleware/caching.rb,
lib/frodo/properties/boolean.rb,
lib/frodo/properties/complex.rb,
lib/frodo/properties/decimal.rb,
lib/frodo/properties/integer.rb,
lib/frodo/concerns/connection.rb,
lib/frodo/navigation_property.rb,
lib/frodo/schema/complex_type.rb,
lib/frodo/middleware/multipart.rb,
lib/frodo/properties/date_time.rb,
lib/frodo/properties/collection.rb,
lib/frodo/middleware/raise_error.rb,
lib/frodo/properties/time_of_day.rb,
lib/frodo/concerns/authentication.rb,
lib/frodo/middleware/instance_url.rb,
lib/frodo/middleware/authorization.rb,
lib/frodo/middleware/odata_headers.rb,
lib/frodo/middleware/authentication.rb,
lib/frodo/middleware/custom_headers.rb,
lib/frodo/navigation_property/proxy.rb,
lib/frodo/properties/geography/base.rb,
lib/frodo/properties/geography/point.rb,
lib/frodo/properties/date_time_offset.rb,
lib/frodo/properties/geography/polygon.rb,
lib/frodo/query/criteria/date_functions.rb,
lib/frodo/middleware/authentication/token.rb,
lib/frodo/query/criteria/lambda_operators.rb,
lib/frodo/query/criteria/string_functions.rb,
lib/frodo/properties/geography/line_string.rb,
lib/frodo/middleware/authentication/password.rb,
lib/frodo/query/criteria/geography_functions.rb,
lib/frodo/query/criteria/comparison_operators.rb,
lib/frodo/middleware/authentication/client_credentials.rb

Overview

The Frodo gem provides a convenient way to interact with OData V4 services from Ruby. Please look to the README for how to get started using the Frodo gem.

Defined Under Namespace

Modules: Concerns, Properties Classes: AbstractClient, Client, Configuration, Entity, EntityContainer, EntitySet, Middleware, NavigationProperty, Property, PropertyRegistry, Query, Railtie, Schema, Service, ServiceRegistry

Constant Summary collapse

Error =
Class.new(StandardError)
ServerError =
Class.new(Error)
AuthenticationError =
Class.new(Error)
UnauthorizedError =
Class.new(Error)
APIVersionError =
Class.new(Error)
VERSION =
'0.12.8'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.log(message) ⇒ Object



35
36
37
38
# File 'lib/frodo/config.rb', line 35

def log(message)
  return unless Frodo.log?
  configuration.logger.send(configuration.log_level, message)
end

Class Method Details

.configurationObject

Returns the current Configuration

Example

Frodo.configuration.username = "username"
Frodo.configuration.password = "password"


15
16
17
# File 'lib/frodo/config.rb', line 15

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields the Configuration

Example

Frodo.configure do |config|
  config.username = "username"
  config.password = "password"
end

Yields:



27
28
29
# File 'lib/frodo/config.rb', line 27

def configure
  yield configuration
end

.log?Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/frodo/config.rb', line 31

def log?
  @log ||= false
end

.new(*args, &block) ⇒ Object



62
63
64
# File 'lib/frodo.rb', line 62

def new(*args, &block)
  Frodo::Client.new(*args, &block)
end