new Group(groupname)
グループオブジェクトを生成する
・オブジェクトを生成しただけでは、まだサーバにグループ登録されていない。グループ登録は、Group#save で実施する。
・グループはアプリ毎ではなく、テナント毎に作成される。
Parameters:
Name | Type | Description |
---|---|---|
groupname |
String | グループ名。 グループ名に使用できる文字は、1バイト英数のみ。 |
Returns:
新規グループオブジェクトのインスタンス
- Type
- Group
Example
var group = new Nebula.Group("group1");
Members
-
_id :String
-
グループID
Type:
- String
-
acl :Acl
-
ACL
Type:
-
createdAt :String
-
作成日時
Type:
- String
-
etag :String
-
ETag
Type:
- String
-
groupname :String
-
グループ名
Type:
- String
-
groups :Array.<String>
-
グループ名の一覧(配列)
Type:
- Array.<String>
-
updatedAt :String
-
更新日時
Type:
- String
-
users :Array.<String>
-
ユーザIDの一覧(配列)
Type:
- Array.<String>
Methods
-
<static> delete()
-
グループを削除する (Deprecated)
・本APIは Deprecated である。Group.remove を使用すること。- Deprecated:
-
- since v4.0.1
-
<static> query(conditions, callbacks)
-
グループ検索
Parameters:
Name Type Description conditions
Object 取得条件
・conditions にnull を指定した場合は全グループ一を取得する。 ・conditions は、JSON 形式で指定する。 { "groupname" : "group1" } (プロパティ名) groupname : グループ名
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(groups) groups : 取得した Nebula.Group インスタンスの配列 各要素に以下のグループのプロパティが更新される (プロパティ名) groupname : グループ名 users : 所属ユーザIDの一覧 groups : 所属サブグループ名の一覧 acl : ACL
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> remove(group, callbacks)
-
グループ削除
Parameters:
Name Type Description group
Group 削除するグループオブジェクトのインスタンス
・group にnull は指定できない。 ・グループ削除に必要なインスタンスのプロパティは、以下の通りとする。 (プロパティ名) groupname : グループ名(必須) etag : グループに設定されるETag値(オプション) ・ETag値は、グループ新規保存した場合にサーバで追加され、 グループを更新する度にサーバで変更される固有値である。 ETag値は、グループの "etag"プロパティに格納される。 ・etagを指定すると、サーバに保存されているグループのETag値と照合される。 一致しなかった場合は、データ衝突として「409 Conflict」エラーとなり、グループは削除されない。 etagがnullの場合は、ETag値は照合されずグループは無条件で削除される。
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の引数は無し。
- Since:
-
- v4.0.1
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
addEntry(entry)
-
グループエントリ追加
・登録するグループにユーザまたはグループを追加する。
Parameters:
Name Type Description entry
Object Nebula.User またはNebula.Group のインスタンス
・entry は、グループに追加する Nebula.User または Nebula.Group のインスタンスを指定する。 各インスタンスには以下のプロパティが設定されていること。 Nebula.User (プロパティ名) _id : ユーザのID(*) (*) ユーザID は、ユーザ登録が成功した場合にSDK がユーザプロパティに設定する。 ユーザ取得、ログイン、カレントユーザ取得で取得したNebula.User のインスタンスには登録時のユーザID が設定されている。 Nebula.Group (プロパティ名) groupname : 登録済みグループ名
Returns:
value エントリ結果
・value は、エントリとして追加した場合 true、パラメータが不正の場合false が返る。 ・処理の成功により、以下のグループオブジェクトのプロパティが更新される。 (プロパティ名) users : グループにエントリされるユーザ(ID)の配列(*) groups : グループにエントリされるグループ名の配列(*) (*) グループプロパティ設定(group.set) でプロパティを設定した場合、エントリ追加した内容は上書きされる。
- Type
- Boolean
-
addMembers(userIds, groups, callbacks)
-
グループメンバ追加
・グループにユーザ・子グループを追加する。
Parameters:
Name Type Description userIds
Array.<string> 追加するユーザIDの配列
groups
Array.<string> 追加するグループ名の配列
callbacks
Callbacks 応答コールバック
処理が成功した場合、success の呼び出しにて通知する。 success の引数は以下の通り。
success(group) group : 変更したグループオブジェクトのインスタンス
- Since:
-
- 6.5.0
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
get(property)
-
グループプロパティ取得 (Deprecated)
・グループオブジェクトのプロパティを取得する。
・取得可能なプロパティの詳細は、各メソッドの説明を参照のこと。
・本メソッドは Deprecated である。各フィールドの getter を使用すること。Parameters:
Name Type Description property
String プロパティ名
- Deprecated:
-
- since 5.0.0
Returns:
value プロパティ値
- Type
- String
-
removeEntry(entry)
-
グループエントリ削除
・グループからユーザまたはグループを削除する。
Parameters:
Name Type Description entry
Object Nebula.User またはNebula.Group のインスタンス
・entry は、グループから削除する Nebula.User または Nebula.Group のインスタンスを指定する。 各インスタンスには以下のプロパティが設定されていること。 Nebula.User (プロパティ名) _id : ユーザのID(*) (*) ユーザID は、ユーザ登録が成功した場合にSDK がユーザプロパティに設定する。 ユーザ取得、ログイン、カレントユーザ取得で取得したNebula.User のインスタンスには登録時のユーザID が設定されている。 Nebula.Group (プロパティ名) groupname : 登録済みグループ名
Returns:
value エントリ結果
・value は、エントリから削除した場合 true、パラメータが不正の場合false が返る。 ・処理の成功により、以下のグループオブジェクトのプロパティが更新される。 (プロパティ名) users : グループにエントリされるユーザ(ID)の配列(*) groups : グループにエントリされるグループ名の配列(*) (*) グループプロパティ設定(group.set) でプロパティを設定した場合、エントリ追加した内容は上書きされる。
- Type
- Boolean
-
removeMembers(userIds, groups, callbacks)
-
グループメンバ削除
・グループからにユーザ・子グループを削除する
Parameters:
Name Type Description userIds
Array.<string> 削除するユーザIDの配列
groups
Array.<string> 削除するグループ名の配列
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(group) group : 変更したグループオブジェクトのインスタンス
- Since:
-
- 6.5.0
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
save(callbacks)
-
グループ登録・更新
・グループを登録する。
・既に同一名称のグループが登録されている場合は更新となる。
・グループ登録(又は更新)に必要なグループプロパティは、以下の通り。- groupname : グループ名(必須)
- users : グループに登録されるユーザ(ID)の配列(※)
- groups : グループに登録されるグループ名の配列(※)
- acl : グループに設定されるNebula.Acl のインスタンス(オプション)
- etag : グループに設定されるETag値(オプション)
・ETag値は、グループを登録した場合にサーバで追加され、 グループを更新する度にサーバで変更される固有値である。 ETag値は、グループの "etag"プロパティに格納される。 グループの登録の場合は、etagがないため必ず新規に生成・保存される。
・グループプロパティにETag値が含まれる場合、サーバに保存されているグループのETag値と照合される。 一致しなかった場合は、データ衝突として「409 Conflict」エラーとなり、グループは更新されない。Parameters:
Name Type Description callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(group) group : 登録したグループオブジェクトのインスタンス acl を設定しなかった場合は以下のNebula.Acl インスタンスが自動的に設定される。 ・ログイン済みの場合 :全フィールドが空。 オーナ(作成ユーザ)のみアクセス可。 ・未ログイン状態の場合 :r, w に "g:anonymous" が設定される。 誰でも読み書き可。
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
set(property, value)
-
グループプロパティ設定 (Deprecated)
・グループオブジェクトのプロパティを設定する。
・設定可能なプロパティの詳細は、各メソッドの説明を参照のこと。
・本メソッドは Deprecated である。各フィールドの setter を使用すること。Parameters:
Name Type Description property
String プロパティ名
value
String プロパティ値
- Deprecated:
-
- since 5.0.0
Returns:
this
- Type
- Group