/* * Copyright (C) 2014 The Android Open Source Project * * Licensed under the Eclipse Public License, Version 1.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.eclipse.org/org/documents/epl-v10.php * * 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 com.android.sdklib.repository; /** * This class describes the properties that can appear in an add-on's manifest.ini file. * <p/> * These constants are public and part of the SDK Manager public API. * Once published we can't change them arbitrarily since various parts * of our build process depend on them. */ public class AddonManifestIniProps { /** * The <em>display</em> name of the add-on. Always present. <br/> * In source.properties, this matches {@link PkgProps#ADDON_NAME_DISPLAY}. */ public static final String ADDON_NAME = "name"; //$NON-NLS-1$ /** * The optional "name id" of the add-on. <br/> * In source.properties, this matches {@link PkgProps#ADDON_NAME_ID}. * <p/> * Historically the manifest used to have only a 'name' property for both internal unique id * and display, in which case the internal id was synthesized using the display name and * matching a {@code [a-zA-Z0-9_-]+} pattern (see {@code Addonpackage#sanitizeDisplayToNameId} * for details.) */ public static final String ADDON_NAME_ID = "name-id"; //$NON-NLS-1$ /** * The <em>display</em> vendor of the add-on. Always present. <br/> * In source.properties, this matches {@link PkgProps#ADDON_VENDOR_DISPLAY}. */ public static final String ADDON_VENDOR = "vendor"; //$NON-NLS-1$ /** * The optional vendor id of the add-on. <br/> * In source.properties, this matches {@link PkgProps#ADDON_VENDOR_ID}. * <p/> * Historically the manifest used to have only a 'vendor' property for both internal unique id * and display, in which case the internal id was synthesized using the display name and * matching a {@code [a-zA-Z0-9_-]+} pattern (see {@code Addonpackage#sanitizeDisplayToNameId} * for details.) */ public static final String ADDON_VENDOR_ID = "vendor-id"; //$NON-NLS-1$ /** * The free description string of the add-on. <br/> * Not saved in source.properties. */ public static final String ADDON_DESCRIPTION = "description"; //$NON-NLS-1$ /** * The revision of the add-on. <br/> * In source.properties, this matches {@link PkgProps#PKG_REVISION}. */ public static final String ADDON_REVISION = "revision"; //$NON-NLS-1$ /** * An older/obsolete attribute for the revision of the add-on. <br/> * The name was changed as it is ambiguous (platform version vs platform revision.) */ public static final String ADDON_REVISION_OLD = "version"; //$NON-NLS-1$ /** * The API level of the add-on, always an integer. <br/> * <em>Note: add-ons do not currently support API codenames. </em> <br/> * In source.properties, this matches {@link PkgProps#VERSION_API_LEVEL}. */ public static final String ADDON_API = "api"; //$NON-NLS-1$ /** * The list of libraries of the add-on. <br/> * This is a string in the format "java.package1;java.package2;...java.packageN". * For each library's java package name, the manifest.ini contains a key with * value "library.jar;Jar Description String". Example: * <pre> * libraries=com.example.foo;com.example.bar * com.example.foo=foo.jar;Foo Library * com.example.bar=bar.jar;Bar Library * </pre> * Not saved in source.properties. */ public static final String ADDON_LIBRARIES = "libraries"; //$NON-NLS-1$ /** * An optional default skin string of the add-on. <br/> * Not saved in source.properties. */ public static final String ADDON_DEFAULT_SKIN = "skin"; //$NON-NLS-1$ /** * An optional USB vendor string for the add-on. <br/> * Not saved in source.properties. */ public static final String ADDON_USB_VENDOR = "usb-vendor"; //$NON-NLS-1$ }