Class: Scholarsphere::Client::Collection

Inherits:
Object
  • Object
show all
Defined in:
lib/scholarsphere/client/collection.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(metadata:, depositor:, permissions: {}, work_noids: []) ⇒ Collection

Returns a new instance of Collection.

Parameters:

  • metadata (Hash)

    Attributes for the collection

  • depositor (String)

    Access ID of the depositor

  • permissions (Hash) (defaults to: {})

    Additional permissions for the collection (optional)

  • work_noids (Array<String>) (defaults to: [])

    List of of identifiers for works that belong to the collection



12
13
14
15
16
17
# File 'lib/scholarsphere/client/collection.rb', line 12

def initialize(metadata:, depositor:, permissions: {}, work_noids: [])
  @metadata = 
  @depositor = depositor
  @permissions = permissions
  @work_noids = work_noids
end

Instance Attribute Details

#depositorObject (readonly)

Returns the value of attribute depositor.



6
7
8
# File 'lib/scholarsphere/client/collection.rb', line 6

def depositor
  @depositor
end

#metadataObject (readonly)

Returns the value of attribute metadata.



6
7
8
# File 'lib/scholarsphere/client/collection.rb', line 6

def 
  @metadata
end

#permissionsObject (readonly)

Returns the value of attribute permissions.



6
7
8
# File 'lib/scholarsphere/client/collection.rb', line 6

def permissions
  @permissions
end

#work_noidsObject (readonly)

Returns the value of attribute work_noids.



6
7
8
# File 'lib/scholarsphere/client/collection.rb', line 6

def work_noids
  @work_noids
end

Instance Method Details

#createObject



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/scholarsphere/client/collection.rb', line 19

def create
  connection.post do |req|
    req.url 'collections'
    req.body = {
      metadata: ,
      depositor: depositor,
      permissions: permissions,
      work_noids: work_noids
    }.to_json
  end
end