public Object getAdapter()

in plugins/org.apache.karaf.eik.workbench/src/main/java/org/apache/karaf/eik/workbench/provider/ServiceItem.java [113:155]


    public Object getAdapter(@SuppressWarnings("rawtypes") Class adapter) {
        final Object o;
        if (adapter == null) {
            o = null;
        } else if (adapter.equals(BundleItem.class)) {
            if (serviceReference != null) {
                o = new BundleItem(serviceReference.getBundle(), null, null);
            } else {
                o = null;
            }
        } else if (adapter.equals(ServiceData.class)) {
            if (serviceReference != null) {
                o = new ServiceData(serviceReference);
            } else {
                o = ServiceData.from(rawServiceData);
            }
        } else if (adapter.equals(ServiceReference.class)) {
            if (serviceReference != null) {
                o = serviceReference;
            } else {
                o = null;
            }
        } else if (adapter.equals(Bundle.class)) {
            if (serviceReference != null) {
                o = serviceReference.getBundle();
            } else {
                o = null;
            }
        } else if (adapter.equals(Properties.class)) {
            if (serviceReference != null) {
                o = new Properties();
                for (String key : serviceReference.getPropertyKeys()) {
                    ((Properties)o).put(key, serviceReference.getProperty(key));
                }
            } else {
                o = null;
            }
        } else {
            o = null;
        }

        return o;
    }