設定された接続先のAppPotサーバーを利用するためのクラスです。

Instance Methods

getConfig() -> Config

設定済みの接続先情報を管理するクラスのインスタンスを取得します。

Return:

Type: Config

getUser() -> User

ログイン済みのユーザー情報を管理するクラスのインスタンスを取得します。
ログインしていない場合はnullを返します。

Return:

Type: User

defineModel(className, modelColumns) -> Model

指定した名前で、新しいモデルを定義します。

引数:

Name Type Description
className String モデルの名称です。テーブル名として使用されます。
modelColumns Object モデルが持つカラム(プロパティ)の定義です。

modelColumnsはカラム名をkeyとし、以下の様なObjectをValueとして指定します。

Key Type Description
type AppPot.DataType カラムの型です。
fieldLength Number 型にVarcharを指定した場合に、その長さを指定します。指定しない場合は長さは255となります。

Return:

Type: Model

Example:

var Item = AppPot.defineModel('Item', {
  'name': {
    type: AppPot.DataType.Varchar
  },
  'description': {
    type: AppPot.DataType.Varchar
  },
});

var Customer = AppPot.defineModel('Customer', {
  'name': {
    type: AppPot.DataType.Varchar
  },
  'address': {
    type: AppPot.DataType.Varchar,
    length: 255
  },
  'age': {
    type: AppPot.DataType.Long
  },
  'birthday': {
    type: AppPot.DataType.DateTime
  },
  'isHuman': {
    type: AppPot.DataType.Bool
  }
});

createDatabase(models) -> Promise

指定されたモデルに対応するテーブルを、AppPotサーバーのデータベース上に生成します。
データベースが生成済みの場合は何もしません。(データベースに存在しないテーブルを指定した場合でも何もしません。)

引数:

Name Type Description
models Array defineModelで定義したModelの配列です。

Return:

Type: Promise

Example:

AppPot.createDatabase([Item, Customer])
  .then(_=>{
    console.log('created');
  });

dropAndCreateDatabase(models) -> Promise

指定されたモデルに対応するテーブルを、AppPotサーバーのデータベース上に生成します。
データベースが生成済みの場合でも削除してから生成しなおします。

引数:

Name Type Description
models Array defineModelで定義したModelの配列です。

Return:

Type: Promise

Example:

AppPot.dropAndCreateDatabase([Item, Customer])
  .then(_=>{
    console.log('table dropped and created');
  });

setLocalDatabase(DBInst)

Corodva上でローカルデータベースを使用する際に、ローカルデータベースにアクセスするためのオブジェクトを設定します。
このオブジェクトは、cordova-sqlite-storageプラグインのsqlitePlugin.openDatabase()で生成されたインスタンスである必要があります。

引数:

Name Type Description
DBInst Object cordova-sqlite-storageプラグインのsqlitePlugin.openDatabase()で生成されたインスタンスを指定します。

Example:

var dbInst = window.sqlitePlugin.openDatabase({name: 'test.db', location: 'default'});
AppPot.setLocalDatabase(dbInst);

getLocalDatabase() -> DBInst

setLocalDatabaseで設定したインスタンスを取得します。

Return:

cordova-sqlite-storageプラグインのsqlitePlugin.openDatabase()で生成されたインスタンス

getBuildDate() -> Number

SDKがビルドされた日付をUnixTimeの形式で返します。

Return:

Type: Number
SDKがビルドされた日付をUnixTimeの形式で返します。

getVersion() -> String

SDKのバージョンを返します。

Return:

Type: String
SDKのバージョンをX.Y.Zという形式で返します。(X,Y,Zは負でない整数)

log(message, level) -> Promise

AppPotサーバーにログを送信し、記録します。

引数:

Name Type Description
message String 送信するログ。
level String ログレベル(”ERROR” or “MONITOR”)

Return:

Type: Promise

sendPushNotification(message, target, title) -> Promise

指定したメッセージを、指定した宛先にPushメッセージとして送信します。

引数:

Name Type Description
message String 送信するメッセージ。
target String Pushメッセージの宛先。宛先の指定方法は、ここを参照。
title (optional) String Pushメッセージのタイトル。指定しない場合は、titleは設定されません。

Return:

Type: Promise

isOnline() -> Boolean

オンライン状態かどうかを取得します。

Return:

Type: Boolean
オンラインならばtrue。

online(isOnline)

オンライン状態・オフライン状態を切り替えます。

引数:

Name Type Description
isOnline Boolean オンラインにするならばtrue、オフラインにするならばfalseを指定します。

sendMail(sendingRouteName, from, to, cc, bcc, subject, body) -> Promise

指定したパラメータで、メールを送信します。

引数:

Name Type Description
sendingRouteName String 送信経路を指定します。
from String メールのfrom。
to Array メールのto。アドレスを示す文字列の配列を指定します。
cc Array メールのcc。アドレスを示す文字列の配列を指定します。
bcc Array メールのbcc。アドレスを示す文字列の配列を指定します。
subject String メールのタイトル。
body String メールの本文。

Return:

Type: Promise