001 /*
002 * Copyright (c) OSGi Alliance (2000, 2008). All Rights Reserved.
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package org.osgi.service.device;
017
018 /**
019 * This interface defines standard names for property keys associated with
020 * {@link Device} and {@link Driver} services.
021 *
022 * <p>
023 * The values associated with these keys are of type <code>java.lang.String</code>,
024 * unless otherwise stated.
025 *
026 * @version $Revision: 5673 $
027 * @since 1.1
028 * @see Device
029 * @see Driver
030 */
031 public interface Constants {
032 /**
033 * Property (named "DRIVER_ID") identifying a driver.
034 *
035 * <p>
036 * A <code>DRIVER_ID</code> should start with the reversed domain name of the
037 * company that implemented the driver (e.g., <code>com.acme</code>), and
038 * must meet the following requirements:
039 *
040 * <ul>
041 * <li>It must be independent of the location from where it is obtained.
042 * <li>It must be independent of the {@link DriverLocator} service that
043 * downloaded it.
044 * <li>It must be unique.
045 * <li>It must be different for different revisions of the same driver.
046 * </ul>
047 *
048 * <p>
049 * This property is mandatory, i.e., every <code>Driver</code> service must be
050 * registered with it.
051 */
052 public static final String DRIVER_ID = "DRIVER_ID";
053 /**
054 * Property (named "DEVICE_CATEGORY") containing a human readable
055 * description of the device categories implemented by a device. This
056 * property is of type <code>String[]</code>
057 *
058 * <p>
059 * Services registered with this property will be treated as devices and
060 * discovered by the device manager
061 */
062 public static final String DEVICE_CATEGORY = "DEVICE_CATEGORY";
063 /**
064 * Property (named "DEVICE_SERIAL") specifying a device's serial
065 * number.
066 */
067 public static final String DEVICE_SERIAL = "DEVICE_SERIAL";
068 /**
069 * Property (named "DEVICE_DESCRIPTION") containing a human
070 * readable string describing the actual hardware device.
071 */
072 public static final String DEVICE_DESCRIPTION = "DEVICE_DESCRIPTION";
073 }