NBObject

@interface NBObject : NSObject

Objectクラス

オブジェクトストレージに格納される JSON オブジェクトデータ1件を表現する。

  • acl

    ObjectのACL

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, nullable) NBAcl *acl;

    Swift

    var acl: NBAcl? { get set }
  • Objectの所属するBucket名

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSString *bucket;

    Swift

    var bucket: String? { get }
  • ObjectのID

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSString *objectId;

    Swift

    var objectId: String? { get }
  • Objectの作成日時

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSDate *created;

    Swift

    var created: Date? { get }
  • Objectの更新日時

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSDate *updated;

    Swift

    var updated: Date? { get }
  • ObjectのETag

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSString *etag;

    Swift

    var etag: String? { get }
  • Bucket名を指定したNBObjectの生成を行う

    Declaration

    Objective-C

    + (nonnull instancetype)objectWithBucketName:(nonnull NSString *)bucketName;

    Parameters

    bucketName

    Objectが所属するBucket名

    Return Value

    NBObjectのインスタンス

  • Bucketを指定したイニシャライザ

    Declaration

    Objective-C

    - (nonnull instancetype)initWithBucketName:(nullable NSString *)bucketName;

    Swift

    init(bucketName: String?)

    Parameters

    bucketName

    Objectが所属するBucket名

    Return Value

    NBObjectのインスタンス

  • 指定のkeyに対応する値を取得する

    Declaration

    Objective-C

    - (nullable id)objectForKey:(nonnull NSString *)key;

    Swift

    func object(forKey key: String) -> Any?

    Parameters

    key

    オブジェクトのキー

    Return Value

    keyに対応するオブジェクト 対応するものがない場合はnilを返却する。

  • 指定のkey-valueを格納する。

    Declaration

    Objective-C

    - (void)setObject:(nonnull id)object forKey:(nonnull NSString *)key;

    Swift

    func setObject(_ object: Any, forKey key: String)

    Parameters

    object

    objectはJSONに変換可能なもののみ許容する。 NSString, NSNumber, NSArray, NSDictionary等。 nil, NSNullは許容しない。 重複するキーを指定した場合には上書きを行う。

    key

    オブジェクトのキー

  • オブジェクトに格納されたkeyを取得する

    Declaration

    Objective-C

    - (nonnull NSArray<NSString *> *)allKeys;

    Swift

    func allKeys() -> [String]

    Return Value

    キーの配列。NSStringの要素を格納する。

  • 指定されたキーに対応する値を削除する。

    Declaration

    Objective-C

    - (void)removeObjectForKey:(nonnull NSString *)key;

    Swift

    func remove(forKey key: String)

    Parameters

    key

    削除対象オブジェクトのキー

  • オブジェクトの削除を行う。

    サーバーにオブジェクトが格納されていない場合はエラーとなる。

    Declaration

    Objective-C

    - (void)deleteInBackgroundWithBlock:(nonnull NBResultBlock)block;

    Swift

    func deleteInBackground(completion block: @escaping NBResultBlock)

    Parameters

    block

    削除の結果を通知するBlock

  • オブジェクトの保存を行う。

    オブジェクトがサーバーに保存されていない場合は新規作成、 オブジェクトがサーバーに保存されている場合は上書き更新を行う。 上書き更新時にはACLの指定は省略できない。

    Declaration

    Objective-C

    - (void)saveInBackgroundWithBlock:(nonnull NBObjectsBlock)block;

    Swift

    func saveInBackground(completion block: @escaping NBObjectsBlock)

    Parameters

    block

    保存の結果を通知するBlock。 結果のNBObjectの配列には保存した1件のみが格納される。

  • オブジェクトの部分更新を行う。

    ObjectIdが設定されていないオブジェクトの更新は失敗する。

    Declaration

    Objective-C

    - (void)partUpdateInBackgroundWithDictionary:(nonnull NSDictionary *)dictionary
                                           block:(nonnull NBObjectsBlock)block;

    Swift

    func partUpdateInBackground(dictionary: [AnyHashable : Any], completion block: @escaping NBObjectsBlock)

    Parameters

    dictionary

    部分更新するデータのdictionary

    block

    更新結果を通知するBlock

  • オブジェクトに設定されている情報をdictionary形式で返却する

    Declaration

    Objective-C

    - (nonnull NSDictionary<NSString *, id> *)dictionaryValue;

    Swift

    func dictionaryValue() -> [String : Any]

    Return Value

    オブジェクトが保持しているkey-Valueのdictionary

  • オブジェクトにdictionaryの情報を反映する

    Declaration

    Objective-C

    - (void)setObjectDataWithDictionary:
        (nonnull NSDictionary<NSString *, id> *)dictionary;

    Swift

    func setObjectData(dictionary: [String : Any])

    Parameters

    dictionary

    オブジェクトに設定するkey-Valueのdictionary JSONオブジェクトに設定可能なオブジェクトのみを含むこと

  • 指定のkeyに対応する値を取得する objectForKey:と同様である。

    Declaration

    Objective-C

    - (nullable id)objectForKeyedSubscript:(nonnull NSString *)key;

    Swift

    subscript(key: String) -> Any! { get set }

    Parameters

    key

    オブジェクトのキー

    Return Value

    keyに対応するオブジェクト 対応するものがない場合はnilを返却する。

  • 指定のkey-valueを格納する。 setObject:forKey:と同様である。

    Declaration

    Objective-C

    - (void)setObject:(nonnull id)object forKeyedSubscript:(nonnull NSString *)key;

    Parameters

    object

    objectはJSONに変換可能なもののみ許容する。 NSString, NSNumber, NSArray, NSDictionary等。 nil, NSNullは許容しない。 重複するキーを指定した場合には上書きを行う。

    key

    オブジェクトのキー