/*
* Copyright 2012 The Stanford MobiSocial Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package mobisocial.musubi.model;
public class MApp {
public static final String TABLE = "apps";
public static final String COL_ID = "_id";
public static final String COL_APP_ID = "app_id";
/**
* the friendly name to display for the app. computed from package manager
* if this is null
*/
public static final String COL_NAME = "name";
/**
* Android package name for this app, if any.
*/
public static final String COL_ANDROID_PACKAGE = "android_package";
/**
* A webapp url for this app, if any.
*/
public static final String COL_WEB_APP_URL = "web_app_url";
////////////////
// These fields are unused and experimental
////////////////
/**
* uri that hosts the manifest. for now that means
* autogenerated for sharing from package name with a specified mime type
* https://pepperjack.stanford.edu/musubi/manifests/android/com.xxx/mime%XXtype/musubi.json
* https://pepperjack.stanford.edu/musubi/manifests/ios/com.yyy/mime%XXtype/musubi.json
* an html musubi app
* https://somewhere/somwebeapp/musubi.json
* a native app can specify one too
* https://somewhere/somenativeappmetadataonly/musubi.json
*/
public static final String COL_MANIFEST_URI = "manifest_uri";
/**
* last time the manifest was refreshed
*/
public static final String COL_REFRESHED_AT = "refreshed_at";
/**
* icon binary data, small version (16x16 ?)
*/
public static final String COL_SMALL_ICON = "small_icon";
/**
* icon binary data
*/
public static final String COL_ICON = "icon";
/**
* view intent, tap obj, (preferred) as a uri.
*/
public static final String COL_VIEW_INTENT = "view_intent";
/**
* edit intent (preferred) as a uri.
*/
public static final String COL_EDIT_INTENT = "edit_intent";
/**
* mime types valid for the raw field of this object
*/
public static final String COL_MIME_TYPES = "mime_types";
/**
* app shared data domain id. the manifest provides an initial one,
* but they can be overridden by changing the groupings in the app domain
* members table
*/
public static final String COL_ORIGINAL_APP_DOMAIN_ID = "domain_id";
/**
* Flag indicating the user deleted the app
*/
public static final String COL_DELETED = "deleted";
public long id_;
public String appId_;
public String name_;
public String androidPackage_;
public String webAppUrl_;
public boolean deleted_;
// Experimental, unused:
public byte[] smallIcon_;
public byte[] icon_;
public String manifestUri_;
public long refreshedAt_;
public String viewIntent_;
public String editIntent_;
public String mimeTypes_;
public long originalDomainId_;
}