blob: 7b32f93b01d357236fb7cea99ddc87dc21bbd30b [file] [log] [blame]
David Jenckse165efc2014-06-15 01:09:26 +00001/*
2 * Copyright (c) OSGi Alliance (2012, 2014). All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package org.osgi.framework.dto;
18
19import java.util.List;
20import java.util.Map;
21import org.osgi.dto.DTO;
22import org.osgi.framework.BundleContext;
23
24/**
25 * Data Transfer Object for a Framework.
26 *
27 * <p>
28 * The System Bundle can be adapted to provide a {@code FrameworkDTO} for the
29 * framework of the system bundle. A {@code FrameworkDTO} obtained from a
30 * framework will contain only the launch properties of the framework. These
31 * properties will not include the System properties.
32 *
33 * @author $Id: 7c525727cbe877e888b460cd14d8f9054f99ee0c $
34 * @NotThreadSafe
35 */
36public class FrameworkDTO extends DTO {
37 /**
38 * The bundles that are installed in the framework.
39 *
40 * @see BundleContext#getBundles()
41 */
42 public List<BundleDTO> bundles;
43
44 /**
45 * The launch properties of the framework.
46 *
47 * The value type must be a numerical type, Boolean, String, DTO or an array
48 * of any of the former.
49 *
50 * @see BundleContext#getProperty(String)
51 */
52 public Map<String, Object> properties;
53
54 /**
55 * The services that are registered in the framework.
56 *
57 * @see BundleContext#getServiceReferences(String, String)
58 */
59 public List<ServiceReferenceDTO> services;
60}