APObject Class Reference
Inherits from | NSObject |
Declared in | APObject.h APObject.m |
Overview
AppPotによって永続化が管理するクラスは全てこのクラスを親クラスとして指定する必要がある。 SDKを利用する開発車はこのクラスが定義している属性を適切に設定することでAppPot SKDによるデータの管理方式やデータ保存場所等を指定する。
Tasks
-
objectId
property -
createUserId
property -
groupIds
property -
isAutoRefresh
property -
autoRefreshInterval
property -
scopeType
property -
lifeSpan
property -
syncStatus
property -
persistentType
property -
isUsingLockForUpdate
property -
createTime
property -
updateTime
property -
serverUpdateTime
property -
– initForServerOnlyWithScopeType:
-
– setDefaultProperties
-
– saveObject:
-
– saveWithBlock:
-
– deleteObject:
-
– deleteObjectWithBlock:
-
– refreshObjectWithBlock:
-
+ objectWithId:error:
-
+ objectWithId:withBlock:
Properties
autoRefreshInterval
このクラスのデータをサーバー側のデータで更新するまでの間隔。秒単位で指定。Refresh time interval @property refreshInterval
@property (nonatomic) long autoRefreshInterval
Declared In
APObject.h
createTime
Created time @property createTime
@property (nonatomic, strong) NSDate *createTime
Declared In
APObject.h
createUserId
このデータを作成したユーザーのID @property createUserID
@property (nonatomic) long createUserId
Declared In
APObject.h
groupIds
このデータへのアクセスができるグループのID @property groupIDs
@property (nonatomic, strong) NSString *groupIds
Declared In
APObject.h
isAutoRefresh
このクラスの情報を定期的にサーバーからアップデートするかとうかを指定。Desice if data of this class refreshed automatically by the value in the server. @property doRefreshAutomatically
@property (nonatomic) BOOL isAutoRefresh
Discussion
デフォルト値はNO。つまりサーバーとの自動同期は行わない。この値がYESに設定されたクラスに対してはAppPot SDKが定期的にサーバーの情報を確認して端末内のデータを更新する。端末内のデータの変更をサーバーに通知することはない。端末でのデータの更新はAPEntityManagerの更新用APIを使って行う。サーターアンダギーとの情報更新の間隔はrefreshIntervalによって設定する。Default value for isAutoRefresh is NO. If isAutoRefresh is set YES, AppPot SDK will call refresh: in a fixed period based on the value of refreshInterval.
Declared In
APObject.h
isUsingLockForUpdate
データを更新する前に他の人によって変更されたかを確認するか否かを指定する。 @property isUsingLockForUpdate
@property (nonatomic) BOOL isUsingLockForUpdate
Declared In
APObject.h
lifeSpan
Time to expired @property lifeSpan
@property (nonatomic) long lifeSpan
Declared In
APObject.h
objectId
このデータの識別子となるキーシステム全体でユニークである。 @property objectId
@property (nonatomic, strong) NSString *objectId
Declared In
APObject.h
persistentType
Type of data access @property peristentType
@property (nonatomic) int persistentType
Declared In
APObject.h
scopeType
このクラスに対するアクセス権限(readwrite)Access right for the class @property scopeType
@property (nonatomic) NSInteger scopeType
Declared In
APObject.h
serverUpdateTime
サーバーでの更新時刻。 @property updateTime
@property (nonatomic, strong) NSString *serverUpdateTime
Declared In
APObject.h
Class Methods
Instance Methods
deleteObject:
データを同期型で削除する。
- (BOOL)deleteObject:(NSError **)error
Parameters
- error
データの削除の際に発生したエラーを格納する
@discussion
Declared In
APObject.h
deleteObjectWithBlock:
データを非同期型で削除する。
- (void)deleteObjectWithBlock:(APResponseResultBlock)block
Parameters
- error
データの削除の際に発生したエラーを格納する
@discussion
Declared In
APObject.h
initForServerOnlyWithScopeType:
サーバー側に保存する目的でデータを生成する。
- (id)initForServerOnlyWithScopeType:(SCOPE_TYPE)scopeType
Parameters
- scopeType
データへのアクセス権限の範囲を指定
Discussion
端末にはデータを保存せず、サーバーだけに保存するためのデータを生成する。 このメソッドで生成されたデータはこのクラスの指定された永続化場所とは関係なくサーバーにだけ保存される。
Declared In
APObject.h
refreshObjectWithBlock:
Refresh immediately @property self
- (void)refreshObjectWithBlock:(APObjectResultBlock)block
Declared In
APObject.h
saveObject:
このオブジェクトの情報をデータストーアに同期型で反映する。保存先のデータストーアはpersistentTypeによって制御される。
- (APObject *)saveObject:(NSError **)error
Parameters
- error
オブジェクトの更新中に発生したエラーを格
Return Value
object. 保存されたオブジェクトを返す。 @discussion このメソッドはオブジェクトの状態によってデータストーアに新しいデータを追加、あるいは既存のデータを更新する。新しいデータであるか否かはobjectIdの有無で判断する。objectIdがない場合は新しいデータとして追加する。
Declared In
APObject.h
saveWithBlock:
このオブジェクトの情報をデータストーアに非同期型で反映する。保存先のデータストーアはpersistentTypeによって制御される。
- (void)saveWithBlock:(APObjectResultBlock)block
Parameters
- ブロック
オブジェクトの更新が終わった後に実行されるコードを渡す。
Return Value
objectId. 保存されたオブジェクトの識別子を返す。 @discussion このメソッドはオブジェクトの状態によってデータストーアに新しいデータを追加、あるいは既存のデータを更新する。新しいデータであるか否かはobjectIdの有無で判断する。objectIdがない場合は新しいデータとして追加する。
Declared In
APObject.h
setDefaultProperties
このクラスの基本的な設定を行う。
- (void)setDefaultProperties
Discussion
以下の属性を設定することでこのクラスの基本的な操作方式を指定する。この指定はこのクラスの全てのインスタンスに適用される。 以下に設定可能な属性と設定しなかった場合のデフォルト値を示す。このメソッド内で設定しなかった属性に対してはデフォルト値が適用される。
self.peristentType = APPersistentServerOnly; // データの保存場所を指定する。 self.isAutoRefresh = NO; // データの保存場所が端末とサーバー(APPersistentServerAndLocal)で、端末のデータを自動更新する場合のみYESにする。 self.refreshInterval = 600; // 自動更新を行う場合、自動更新の時間間隔を秒単位で指定する。デフォルト値は10分か、SDKの初期化にて指定された時間が使用される。 self.lifeSpan = 2,592,000; // 永続化場所が端末とサーバー(APPersistentServerAndLocal)である場合、端末内のデータの保存期間を秒で指定する。デフォルト値は30日か、SDKの初期化にて指定された時間が使用される。 self.scopeType = APScopeGroup; // データを参照・編集できる範囲を指定する。デフォルト値はデータ作成者のグループ(APScopeGroup) かSDKの初期化にて指定されたタイプが使用される。 self.scopeTypeForAutoRefresh = APScopeGroup; // 端末にあるデータの自動更新対象の権限範囲を指定する。デフォルト値はデータの権限(_scopeType)が使用される。 self.isUsingLockForUpdate = NO;
Declared In
APObject.h