Class: Ecoportal::API::GraphQL

Inherits:
Object
  • Object
show all
Includes:
Common::GraphQL::ClassHelpers
Defined in:
lib/ecoportal/api/graphql.rb,
lib/ecoportal/api/graphql/base.rb,
lib/ecoportal/api/graphql/input.rb,
lib/ecoportal/api/graphql/model.rb,
lib/ecoportal/api/graphql/query.rb,
lib/ecoportal/api/graphql/payload.rb,
lib/ecoportal/api/graphql/fragment.rb,
lib/ecoportal/api/graphql/base/page.rb,
lib/ecoportal/api/graphql/base/field.rb,
lib/ecoportal/api/graphql/base/model.rb,
lib/ecoportal/api/graphql/base/query.rb,
lib/ecoportal/api/graphql/connection.rb,
lib/ecoportal/api/graphql/model/page.rb,
lib/ecoportal/api/graphql/model/user.rb,
lib/ecoportal/api/graphql/base/action.rb,
lib/ecoportal/api/graphql/model/field.rb,
lib/ecoportal/api/graphql/base/payload.rb,
lib/ecoportal/api/graphql/input/search.rb,
lib/ecoportal/api/graphql/model/action.rb,
lib/ecoportal/api/graphql/base/resource.rb,
lib/ecoportal/api/graphql/model/account.rb,
lib/ecoportal/api/graphql/query/actions.rb,
lib/ecoportal/api/graphql/base/date_time.rb,
lib/ecoportal/api/graphql/base/page_info.rb,
lib/ecoportal/api/graphql/model/resource.rb,
lib/ecoportal/api/graphql/base/connection.rb,
lib/ecoportal/api/graphql/base/organization.rb,
lib/ecoportal/api/graphql/connection/action.rb,
lib/ecoportal/api/graphql/base/id_diff_input.rb,
lib/ecoportal/api/graphql/base/person_member.rb,
lib/ecoportal/api/graphql/model/organization.rb,
lib/ecoportal/api/graphql/base/file_container.rb,
lib/ecoportal/api/graphql/fragment/pagination.rb,
lib/ecoportal/api/graphql/input/search_filter.rb,
lib/ecoportal/api/graphql/input/search_sorter.rb,
lib/ecoportal/api/graphql/model/person_member.rb,
lib/ecoportal/api/graphql/base/action_category.rb,
lib/ecoportal/api/graphql/base/file_attachment.rb,
lib/ecoportal/api/graphql/model/file_container.rb,
lib/ecoportal/api/graphql/base/query_connection.rb,
lib/ecoportal/api/graphql/model/file_attachment.rb,
lib/ecoportal/api/graphql/base/contractor_entity.rb,
lib/ecoportal/api/graphql/base/validation_errors.rb,
lib/ecoportal/api/graphql/model/contractor_entity.rb,
lib/ecoportal/api/graphql/connection/person_member.rb,
lib/ecoportal/api/graphql/query/contractor_entities.rb,
lib/ecoportal/api/graphql/fragment/contractor_entity.rb,
lib/ecoportal/api/graphql/connection/contractor_entity.rb,
lib/ecoportal/api/graphql/input/create_contractor_entity.rb,
lib/ecoportal/api/graphql/input/update_contractor_entity.rb,
lib/ecoportal/api/graphql/input/destroy_contractor_entity.rb,
lib/ecoportal/api/graphql/payload/create_contractor_entity.rb,
lib/ecoportal/api/graphql/payload/update_contractor_entity.rb,
lib/ecoportal/api/graphql/payload/destroy_contractor_entity.rb

Defined Under Namespace

Modules: Base, Connection, Input, Model, Payload, Query Classes: Fragment

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(email: nil, pass: nil, org_id: nil) ⇒ GraphQL

Creates a GraphQL object to interact with the ecoPortal GraphQL API.

Parameters:

  • org_id (String) (defaults to: nil)

    the id of the target organization. It defaults to the environmental variable ORGANIZATION_ID, if defined

  • logger (Logger)

    an object with Logger interface to generate logs.



14
15
16
17
# File 'lib/ecoportal/api/graphql.rb', line 14

def initialize(email: nil, pass: nil, org_id: nil)
  @client = Ecoportal::API::Common::GraphQL::Client.new(email: email, pass: pass, org_id: org_id, no_schema: true)
  @fragments = Ecoportal::API::GraphQL::Fragment.new(client)
end

Instance Attribute Details

#clientCommon::GraphQL::Client (readonly)

a client object that holds the configuration of the api connection.

Returns:



5
6
7
# File 'lib/ecoportal/api/graphql.rb', line 5

def client
  @client
end

#loggerLogger (readonly)

the logger.

Returns:

  • (Logger)

    the current value of logger



5
6
7
# File 'lib/ecoportal/api/graphql.rb', line 5

def logger
  @logger
end

Instance Method Details

#currentOrganizationObject



25
26
27
# File 'lib/ecoportal/api/graphql.rb', line 25

def currentOrganization
  currentOrganizationClass
end

#currentOrganizationClassObject



19
20
21
22
23
# File 'lib/ecoportal/api/graphql.rb', line 19

def currentOrganizationClass
  API::GraphQL::Model::Organization.tap do |org_class|
    org_class.client = client
  end
end