Class: Contentful::Management::Space

Inherits:
Object
  • Object
show all
Includes:
Resource, Resource::Refresher, Resource::SystemProperties
Defined in:
lib/contentful/management/space.rb

Overview

Resource class for Space.

See Also:

  • https://www.contentful.com/developers/documentation/content-management-api/#resources-spaces

Instance Attribute Summary

Attributes included from Resource::SystemProperties

#sys

Attributes included from Resource

#client, #properties, #raw_object, #request

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Resource::Refresher

#reload

Methods included from Resource

#array?, #default_locale, #environment_id, #fields, #nested_locale_fields?, #resource?, #sys

Class Method Details

.all(client, query = {}) ⇒ Contentful::Management::Array<Contentful::Management::Space>

Gets all Spaces



39
40
41
# File 'lib/contentful/management/space.rb', line 39

def self.all(client, query = {})
  ClientSpaceMethodsFactory.new(client).all(query)
end

.create(client, attributes) ⇒ Contentful::Management::Space

Create a space.

Parameters:

Options Hash (attributes):

  • :name (String)
  • :default_locale (String)
  • :organization_id (String)

    Required if user has more than one organization

Returns:



73
74
75
# File 'lib/contentful/management/space.rb', line 73

def self.create(client, attributes)
  ResourceRequester.new(client, self).create({}, attributes)
end

.find(client, space_id) ⇒ Contentful::Management::Space

Gets a specific space.

Parameters:

Returns:



49
50
51
# File 'lib/contentful/management/space.rb', line 49

def self.find(client, space_id)
  ClientSpaceMethodsFactory.new(client).find(space_id)
end

Instance Method Details

#api_keysContentful::Management::SpaceApiKeyMethodsFactory

Allows manipulation of api keys in context of the current space Allows listing all api keys of space, creating new and finding one by ID.

Returns:

  • (Contentful::Management::SpaceApiKeyMethodsFactory)

See Also:

  • README for details.


128
129
130
# File 'lib/contentful/management/space.rb', line 128

def api_keys
  SpaceApiKeyMethodsFactory.new(self)
end

#destroytrue, Contentful::Management::Error

Destroys a space.

Returns:



110
111
112
# File 'lib/contentful/management/space.rb', line 110

def destroy
  ResourceRequester.new(client, self.class).destroy(space_id: id)
end

#environmentsContentful::Management::SpaceEnvironmentMethodsFactory

Allows manipulation of environments in context of the current space Allows listing all environments of space, creating new and finding one by ID.

Returns:

  • (Contentful::Management::SpaceEnvironmentMethodsFactory)

See Also:

  • README for details.


119
120
121
# File 'lib/contentful/management/space.rb', line 119

def environments
  SpaceEnvironmentMethodsFactory.new(self)
end

#preview_api_keysContentful::Management::SpacePreviewApiKeyMethodsFactory

Allows manipulation of preview api keys in context of the current space Allows listing all api keys of space and finding one by ID.

Returns:

  • (Contentful::Management::SpacePreviewApiKeyMethodsFactory)

See Also:

  • README for details.


137
138
139
# File 'lib/contentful/management/space.rb', line 137

def preview_api_keys
  SpacePreviewApiKeyMethodsFactory.new(self)
end

#rolesContentful::Management::SpaceRoleMethodsFactory

Allows manipulation of roles in context of the current space Allows listing all roles of space, creating new and finding one by ID.

Returns:

  • (Contentful::Management::SpaceRoleMethodsFactory)

See Also:

  • README for details.


155
156
157
# File 'lib/contentful/management/space.rb', line 155

def roles
  SpaceRoleMethodsFactory.new(self)
end

#saveContentful::Management::Space

If a space is new, an object gets created in the Contentful, otherwise the existing space gets updated.

Returns:

See Also:

  • README for details.


98
99
100
101
102
103
104
105
# File 'lib/contentful/management/space.rb', line 98

def save
  if id
    update(name: name, organization_id: organization)
  else
    new_instance = self.class.create(client, name: name, organization_id: organization)
    refresh_data(new_instance)
  end
end

#space_membershipsContentful::Management::SpaceSpaceMembershipMethodsFactory

Allows manipulation of space memberships in context of the current space Allows listing all space memberships of space, creating new and finding one by ID.

Returns:

  • (Contentful::Management::SpaceSpaceMembershipMethodsFactory)

See Also:

  • README for details.


146
147
148
# File 'lib/contentful/management/space.rb', line 146

def space_memberships
  SpaceSpaceMembershipMethodsFactory.new(self)
end

#update(attributes) ⇒ Contentful::Management::Space

Updates a space.

Parameters:

  • attributes (Hash)

Options Hash (attributes):

  • :name (String)
  • :organization_id (String)

    Required if user has more than one organization

Returns:



84
85
86
87
88
89
90
91
92
# File 'lib/contentful/management/space.rb', line 84

def update(attributes)
  ResourceRequester.new(client, self.class).update(
    self,
    { space_id: id },
    { 'name' => attributes.fetch(:name) },
    version: sys[:version],
    organization_id: attributes[:organization_id]
  )
end

#usersContentful::Management::SpaceUserMethodsFactory

Allows viewing of users in context of the current space Allows listing all users of space, and finding one by ID.

Returns:

  • (Contentful::Management::SpaceUserMethodsFactory)

See Also:

  • README for details.


164
165
166
# File 'lib/contentful/management/space.rb', line 164

def users
  SpaceUserMethodsFactory.new(self)
end

#webhooksContentful::Management::SpaceWebhookMethodsFactory

Allows manipulation of webhooks in context of the current space Allows listing all webhooks for space and finding one by ID.

Returns:

  • (Contentful::Management::SpaceWebhookMethodsFactory)

See Also:

  • README for details.


173
174
175
# File 'lib/contentful/management/space.rb', line 173

def webhooks
  SpaceWebhookMethodsFactory.new(self)
end