Class: FlexOps::Resources::Workspaces
- Inherits:
-
Object
- Object
- FlexOps::Resources::Workspaces
- Defined in:
- lib/flexops/resources/workspaces.rb
Instance Method Summary collapse
- #create(request) ⇒ Object
- #get(workspace_id = nil) ⇒ Object
-
#initialize(http, ws_id_proc) ⇒ Workspaces
constructor
A new instance of Workspaces.
- #invite_member(email:, role: nil) ⇒ Object
- #list ⇒ Object
- #list_members ⇒ Object
- #remove_member(user_id) ⇒ Object
- #update(data) ⇒ Object
- #update_member_role(user_id, role) ⇒ Object
Constructor Details
#initialize(http, ws_id_proc) ⇒ Workspaces
Returns a new instance of Workspaces.
12 13 14 15 |
# File 'lib/flexops/resources/workspaces.rb', line 12 def initialize(http, ws_id_proc) @http = http @ws_id = ws_id_proc end |
Instance Method Details
#create(request) ⇒ Object
26 27 28 |
# File 'lib/flexops/resources/workspaces.rb', line 26 def create(request) @http.post("/api/workspaces", body: request) end |
#get(workspace_id = nil) ⇒ Object
21 22 23 24 |
# File 'lib/flexops/resources/workspaces.rb', line 21 def get(workspace_id = nil) id = workspace_id || @ws_id.call @http.get("/api/workspaces/#{id}") end |
#invite_member(email:, role: nil) ⇒ Object
38 39 40 41 42 |
# File 'lib/flexops/resources/workspaces.rb', line 38 def invite_member(email:, role: nil) body = { email: email } body[:role] = role if role @http.post("/api/workspaces/#{@ws_id.call}/members/invite", body: body) end |
#list ⇒ Object
17 18 19 |
# File 'lib/flexops/resources/workspaces.rb', line 17 def list @http.get("/api/workspaces") end |
#list_members ⇒ Object
34 35 36 |
# File 'lib/flexops/resources/workspaces.rb', line 34 def list_members @http.get("/api/workspaces/#{@ws_id.call}/members") end |
#remove_member(user_id) ⇒ Object
44 45 46 |
# File 'lib/flexops/resources/workspaces.rb', line 44 def remove_member(user_id) @http.delete("/api/workspaces/#{@ws_id.call}/members/#{user_id}") end |
#update(data) ⇒ Object
30 31 32 |
# File 'lib/flexops/resources/workspaces.rb', line 30 def update(data) @http.put("/api/workspaces/#{@ws_id.call}", body: data) end |
#update_member_role(user_id, role) ⇒ Object
48 49 50 |
# File 'lib/flexops/resources/workspaces.rb', line 48 def update_member_role(user_id, role) @http.put("/api/workspaces/#{@ws_id.call}/members/#{user_id}/role", body: { role: role }) end |