/*******************************************************************************
* Code contributed to the webinos project
*
* 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.
*
* Copyright 2011-2012 Paddy Byers
*
******************************************************************************/
package org.webinos.android.app.wrt.mgr;
import org.meshpoint.anode.idl.Dictionary;
public class Artifact implements Dictionary {
/************************************
* Error/warning conditions
************************************/
/* Invalid application package:
* the application package is malformed or might have been corrupted.
* Details: none */
public static final int CODE_MALFORMED = 1000;
/* Incompatible application:
* the application is in a format that is not supported on this device.
* Details:
* 0: FeatureRequest: unavailable feature */
public static final int CODE_INCOMPATIBLE_CONTENT = 1001;
/* Incompatible application:
* the application depends on functionality that is not supported on this device.
* Details:
* 0: FeatureRequest: unavailable feature */
public static final int CODE_INCOMPATIBLE_FEATURE = 1002;
/* Permission denied:
* the application does not have access to the functionality that it depends on.
* Details:
* 0: FeatureRequest: denied feature */
public static final int CODE_DENIED_FEATURE = 1003;
/* Revoked application:
* the application has been revoked and is no longer allowed to be installed.
* Details:
* 0: ISignatureInfo: signature containing revoked certificate */
public static final int CODE_BLOCKED_REVOKED = 1004;
/* Untrusted application:
* the application is untrusted or is from an unknown source and is not allowed to run.
* Details: none */
public static final int CODE_BLOCKED_UNTRUSTED = 1005;
/* Test application:
* the application is a trial version and is not allowed to run.
* Details: none */
public static final int CODE_BLOCKED_TEST = 1006;
/* Protected application:
* the application has copy protection and can only be installed through the shop application.
* Details: none */
public static final int CODE_BLOCKED_PROTECTED = 1007;
/* Restricted content (parental mode):
* the application contains explicit or unsafe content that is not allowed to be displayed.
* Details:
* array of Descriptor of the blocked features */
public static final int CODE_BLOCKED_RESTRICTED_CONTENT = 1008;
/* Restricted application installation (parental mode):
* applications are only allowed to be installed through the shop application.
* Details:
* array of Descriptor of the blocked features */
public static final int CODE_BLOCKED_RESTRICTED_CHANNEL = 1009;
/* Unknown revication status:
* it has not been possible to verify that the application certificate(s) are valid
* and it is not possible to install this application at this time.
* Details: none */
public static final int CODE_BLOCKED_UNKNOWN_OCSP = 1010;
/* Possibly incompatible application:
* the application requires a later runtime version. Some or all of the features of the application might not work properly.
* Details:
* 0: String: the requested version
* 1: String: the current runtime version */
public static final int CODE_COMPATIBILITY_VERSION = 2000;
/* Untrusted application:
* the application is untrusted or is from an unknown source and might be dangerous to run.
* Details: none */
public static final int CODE_UNSAFE_UNTRUSTED = 2001;
/* Test application:
* the application is a trial version and might be dangerous to run.
* Details: none */
public static final int CODE_UNSAFE_TEST = 2002;
/* Privacy-related information is missing.
* Details:
* 0: FeatureRequest[]: array of FeatureRequest for which privacy disclosures are incomplete
* 1: AccessRequest[]: array of AccessRequest for which privacy disclosures are incomplete */
public static final int CODE_UNSAFE_PRIVACY = 2003;
/* The trust certificate on the application has expired, so it might be dangerous to run.
* Details:
* 0: ICertificateInfo: expired certificate */
public static final int CODE_UNSAFE_EXPIRED = 2004;
/* Unable to obtain the verification status of the trust certificate,
* so it might be dangerous to run; installing as untrusted.
* Details:
* 0: ICertificateInfo[]: certificates whose revocation status is unknown */
public static final int CODE_UNSAFE_CERT_UNKNOWN = 2005;
/* Revoked application, allowed in compliance mode:
* the application has been revoked and is being installed for test purposes only.
* Details:
* 0: ISignatureInfo: signature containing revoked certificate */
public static final int CODE_UNSAFE_REVOKED = 2006;
/************************************
* Public API
************************************/
/*
* The nature of the problem as an error code
* STATUS_INVALID: widget package or associated assets not valid
* STATUS_DENIED: the widget does not have permission for the requested functionality
* STATUS_CAPABILITY: the runtime does not have the requested functionality
* others ...
*/
public int status;
/*
* The reason identifier
*/
public int code;
/*
* Details that may be used in constructing a useful error message.
* Each reason will define the set of expected details.
*/
public Object[] details;
/*
* The specific reason - an internally understood string
* to pinpoint the assertion or issue
*/
public String reason;
}