Class: Permissions

Inherits:
ChinoBaseAPI show all
Defined in:
lib/chino_ruby.rb

Instance Method Summary collapse

Methods inherited from ChinoBaseAPI

#delete_resource, #get_resource, #initialize, #parse_response, #patch_resource, #post_resource, #post_resource_with_string_result, #put_resource, #return_uri

Methods inherited from CheckValues

#check_boolean, #check_int, #check_json, #check_string

Constructor Details

This class inherits a constructor from ChinoBaseAPI

Instance Method Details

#list_permissions(limit = nil, offset = nil) ⇒ Object



1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/chino_ruby.rb', line 1233

def list_permissions(limit=nil, offset=nil)
    perms = GetPermissionsResponse.new
    if limit==nil && offset==nil
      perms.from_json(get_resource("/perms", ChinoRuby::QUERY_DEFAULT_LIMIT, 0).to_json)
    else
      perms.from_json(get_resource("/perms", limit, offset).to_json)
    end
    ps = perms.permissions
    perms.permissions = []
    ps.each do |p|
        perm = Permission.new
        perm.from_json(p.to_json)
        perms.permissions.push(perm)
    end
    perms
end

#permissions_on_a_resource(action, resource_type, resource_id, subject_type, subject_id, manage, authorize) ⇒ Object



1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
# File 'lib/chino_ruby.rb', line 1315

def permissions_on_a_resource(action, resource_type, resource_id, subject_type, subject_id, manage, authorize)
    check_string(action)
    check_string(resource_type)
    check_string(resource_id)
    check_string(subject_type)
    check_string(subject_id)
    check_json(manage)
    check_json(authorize)
    data = {"manage": manage, "authorize": authorize}.to_json
    post_resource_with_string_result("/perms/#{action}/#{resource_type}/#{resource_id}/#{subject_type}/#{subject_id}", data)
end

#permissions_on_a_resource_children(action, resource_type, resource_id, resource_children, subject_type, subject_id, manage, authorize) ⇒ Object



1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
# File 'lib/chino_ruby.rb', line 1327

def permissions_on_a_resource_children(action, resource_type, resource_id, resource_children, subject_type, subject_id, manage, authorize)
    check_string(action)
    check_string(resource_type)
    check_string(resource_id)
    check_string(resource_children)
    check_string(subject_type)
    check_string(subject_id)
    check_json(manage)
    check_json(authorize)
    data = {"manage": manage, "authorize": authorize}.to_json
    post_resource_with_string_result("/perms/#{action}/#{resource_type}/#{resource_id}/#{resource_children}/#{subject_type}/#{subject_id}", data)
end

#permissions_on_a_resource_children_created_document(action, resource_type, resource_id, resource_children, subject_type, subject_id, manage, authorize, manage_created_document, authorize_created_document) ⇒ Object



1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
# File 'lib/chino_ruby.rb', line 1340

def permissions_on_a_resource_children_created_document(action, resource_type, resource_id, resource_children, subject_type, subject_id, manage, authorize, manage_created_document, authorize_created_document)
    check_string(action)
    check_string(resource_type)
    check_string(resource_id)
    check_string(resource_children)
    check_string(subject_type)
    check_string(subject_id)
    check_json(manage)
    check_json(authorize)
    data = {"manage": manage, "authorize": authorize, "created_document": { "manage": manage_created_document, "authorize": authorize_created_document}}.to_json
    post_resource_with_string_result("/perms/#{action}/#{resource_type}/#{resource_id}/#{resource_children}/#{subject_type}/#{subject_id}", data)
end

#permissions_on_resources(action, resource_type, subject_type, subject_id, manage, authorize) ⇒ Object



1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
# File 'lib/chino_ruby.rb', line 1304

def permissions_on_resources(action, resource_type, subject_type, subject_id, manage, authorize)
    check_string(action)
    check_string(resource_type)
    check_string(subject_type)
    check_string(subject_id)
    check_json(manage)
    check_json(authorize)
    data = {"manage": manage, "authorize": authorize}.to_json
    post_resource_with_string_result("/perms/#{action}/#{resource_type}/#{subject_type}/#{subject_id}", data)
end

#read_permissions_of_a_group(group_id, limit = nil, offset = nil) ⇒ Object



1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
# File 'lib/chino_ruby.rb', line 1286

def read_permissions_of_a_group(group_id, limit=nil, offset=nil)
    check_string(group_id)
    perms = GetPermissionsResponse.new
    if limit==nil && offset==nil
      perms.from_json(get_resource("/perms/groups/#{group_id}", ChinoRuby::QUERY_DEFAULT_LIMIT, 0).to_json)
    else
      perms.from_json(get_resource("/perms/groups/#{group_id}", limit, offset).to_json)
    end
    ps = perms.permissions
    perms.permissions = []
    ps.each do |p|
        perm = Permission.new
        perm.from_json(p.to_json)
        perms.permissions.push(perm)
    end
    perms
end

#read_permissions_of_a_user(user_id, limit = nil, offset = nil) ⇒ Object



1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
# File 'lib/chino_ruby.rb', line 1268

def read_permissions_of_a_user(user_id, limit=nil, offset=nil)
    check_string(user_id)
    perms = GetPermissionsResponse.new
    if limit==nil && offset==nil
      perms.from_json(get_resource("/perms/users/#{user_id}", ChinoRuby::QUERY_DEFAULT_LIMIT, 0).to_json)
    else
      perms.from_json(get_resource("/perms/users/#{user_id}", limit, offset).to_json)
    end
    ps = perms.permissions
    perms.permissions = []
    ps.each do |p|
        perm = Permission.new
        perm.from_json(p.to_json)
        perms.permissions.push(perm)
    end
    perms
end

#read_permissions_on_a_document(document_id, limit = nil, offset = nil) ⇒ Object



1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
# File 'lib/chino_ruby.rb', line 1250

def read_permissions_on_a_document(document_id, limit=nil, offset=nil)
    check_string(document_id)
    perms = GetPermissionsResponse.new
    if limit==nil && offset==nil
      perms.from_json(get_resource("/perms/documents/#{document_id}", ChinoRuby::QUERY_DEFAULT_LIMIT, 0).to_json)
    else
      perms.from_json(get_resource("/perms/documents/#{document_id}", limit, offset).to_json)
    end
    ps = perms.permissions
    perms.permissions = []
    ps.each do |p|
        perm = Permission.new
        perm.from_json(p.to_json)
        perms.permissions.push(perm)
    end
    perms
end