You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by ld...@apache.org on 2012/02/20 08:41:10 UTC
svn commit: r1291139 [2/2] - in /karaf/webconsole/trunk/osgi:
blueprint/src/main/java/org/apache/karaf/webconsole/osgi/blueprint/details/
blueprint/src/main/resources/org/apache/karaf/webconsole/osgi/blueprint/
blueprint/src/main/resources/org/apache/k...
Added: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ImportServiceTable.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ImportServiceTable.java?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ImportServiceTable.java (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ImportServiceTable.java Mon Feb 20 07:41:08 2012
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.karaf.webconsole.osgi.core.service;
+
+import org.apache.karaf.webconsole.osgi.core.service.column.ObjectClassColumn;
+import org.apache.karaf.webconsole.osgi.core.service.column.ServicePropertyColumn;
+import org.apache.karaf.webconsole.osgi.core.service.column.ServiceProviderColumn;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.DefaultDataTable;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
+import org.apache.wicket.model.Model;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Constants;
+import org.osgi.framework.ServiceReference;
+
+public class ImportServiceTable extends DefaultDataTable<ServiceReference> {
+
+ private static final long serialVersionUID = 1L;
+
+ private static IColumn<ServiceReference>[] columns = new IColumn[] {
+ new ServicePropertyColumn("Service Id", Constants.SERVICE_ID),
+ new ObjectClassColumn(Model.of("Object classes")),
+ new ServiceProviderColumn(Model.of("Provider")),
+ };
+
+ public ImportServiceTable(String id, Bundle bundle) {
+ super(id, columns, new ImportServiceDataProvider(bundle), Integer.MAX_VALUE);
+ }
+
+}
Modified: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ServiceDetailPage.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ServiceDetailPage.java?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ServiceDetailPage.java (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/ServiceDetailPage.java Mon Feb 20 07:41:08 2012
@@ -1,5 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
package org.apache.karaf.webconsole.osgi.core.service;
-public class ServiceDetailPage {
+import org.apache.karaf.webconsole.osgi.core.shared.OsgiPage;
+import org.apache.wicket.PageParameters;
+import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.repeater.RepeatingView;
+import org.osgi.framework.Constants;
+import org.osgi.framework.InvalidSyntaxException;
+import org.osgi.framework.ServiceReference;
+
+/**
+ * Service details page.
+ */
+public class ServiceDetailPage extends OsgiPage {
+
+ public ServiceDetailPage(PageParameters parameters) {
+ long serviceId = parameters.getLong("id");
+
+ RepeatingView repeatingView = new RepeatingView("keys");
+ add(repeatingView);
+
+ String filter = "(" + Constants.SERVICE_ID + "=" + serviceId + ")";
+ try {
+ ServiceReference[] references = context.getServiceReferences(null, filter);
+
+ if (references != null && references.length == 1) {
+ ServiceReference reference = references[0];
+
+ for(String key : reference.getPropertyKeys()) {
+ WebMarkupContainer container = new WebMarkupContainer(repeatingView.newChildId());
+ container.add(new Label("key", key));
+ container.add(new Label("value", reference.getProperty(key).toString()));
+ repeatingView.add(container);
+ }
+ }
+ } catch (InvalidSyntaxException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
}
Added: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassColumn.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassColumn.java?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassColumn.java (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassColumn.java Mon Feb 20 07:41:08 2012
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.karaf.webconsole.osgi.core.service.column;
+
+import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
+import org.apache.wicket.markup.repeater.Item;
+import org.apache.wicket.model.IModel;
+import org.osgi.framework.ServiceReference;
+
+public class ObjectClassColumn extends AbstractColumn<ServiceReference> {
+
+ private static final long serialVersionUID = 1L;
+
+ public ObjectClassColumn(IModel<String> displayModel) {
+ super(displayModel);
+ }
+
+ public void populateItem(Item<ICellPopulator<ServiceReference>> cellItem, String componentId, IModel<ServiceReference> rowModel) {
+ cellItem.add(new ObjectClassPanel(componentId, rowModel));
+ }
+
+}
Copied: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.java (from r1291138, karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/bundle/list/DecorationPanel.java)
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.java?p2=karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.java&p1=karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/bundle/list/DecorationPanel.java&r1=1291138&r2=1291139&rev=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/bundle/list/DecorationPanel.java (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.java Mon Feb 20 07:41:08 2012
@@ -14,44 +14,43 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.karaf.webconsole.osgi.core.bundle.list;
+package org.apache.karaf.webconsole.osgi.core.service.column;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
-import org.apache.karaf.webconsole.osgi.core.spi.IDecorationProvider;
-import org.apache.wicket.Component;
-import org.apache.wicket.markup.html.CSSPackageResource;
+import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.markup.html.panel.Panel;
import org.apache.wicket.model.IModel;
-import org.osgi.framework.Bundle;
+import org.osgi.framework.Constants;
+import org.osgi.framework.ServiceReference;
-public class DecorationPanel extends Panel {
+public class ObjectClassPanel extends Panel {
private static final long serialVersionUID = 1L;
- public DecorationPanel(String id, IModel<Bundle> model, List<IDecorationProvider> decorationProviders) {
+ public ObjectClassPanel(String id, IModel<ServiceReference> model) {
super(id, model);
- add(CSSPackageResource.getHeaderContribution(DecorationPanel.class, "decoration.css"));
-
- List<Component> components = new ArrayList<Component>();
- for (IDecorationProvider provider : decorationProviders) {
- Component decoration = provider.getDecoration("extension", model);
- if (decoration != null) {
- components.add(decoration);
- }
+ Object property = model.getObject().getProperty(Constants.OBJECTCLASS);
+ List<String> objectClasses = new ArrayList<String>();
+ if (property instanceof String[]) {
+ Collections.addAll(objectClasses, (String[]) property);
+ } else {
+ objectClasses.add(property.toString());
}
- add(new ListView<Component>("extensions", components) {
+ add(new ListView<String>("objectClasses", objectClasses) {
+ private static final long serialVersionUID = 1L;
+
@Override
- protected void populateItem(ListItem<Component> item) {
- item.add(item.getModelObject());
+ protected void populateItem(ListItem<String> item) {
+ item.add(new Label("objectClass", item.getModel()));
}
});
-
}
}
Added: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerColumn.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerColumn.java?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerColumn.java (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerColumn.java Mon Feb 20 07:41:08 2012
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.karaf.webconsole.osgi.core.service.column;
+
+import org.apache.karaf.webconsole.core.table.PropertyColumnExt;
+import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
+import org.apache.wicket.markup.repeater.Item;
+import org.apache.wicket.model.IModel;
+import org.osgi.framework.ServiceReference;
+
+public class ServiceConsumerColumn extends PropertyColumnExt<ServiceReference> {
+
+ private static final long serialVersionUID = 1L;
+
+ public ServiceConsumerColumn(String property) {
+ super(property);
+ }
+
+ @Override
+ public void populateItem(Item<ICellPopulator<ServiceReference>> item, String componentId, IModel<ServiceReference> rowModel) {
+ item.add(new ServiceConsumerPanel(componentId, rowModel));
+ }
+
+}
Copied: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.java (from r1291138, karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/bundle/list/DecorationPanel.java)
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.java?p2=karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.java&p1=karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/bundle/list/DecorationPanel.java&r1=1291138&r2=1291139&rev=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/bundle/list/DecorationPanel.java (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.java Mon Feb 20 07:41:08 2012
@@ -14,44 +14,44 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.karaf.webconsole.osgi.core.bundle.list;
+package org.apache.karaf.webconsole.osgi.core.service.column;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
-import org.apache.karaf.webconsole.osgi.core.spi.IDecorationProvider;
-import org.apache.wicket.Component;
-import org.apache.wicket.markup.html.CSSPackageResource;
+import org.apache.karaf.webconsole.osgi.core.bundle.SingleBundlePage;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.markup.html.panel.Panel;
import org.apache.wicket.model.IModel;
import org.osgi.framework.Bundle;
+import org.osgi.framework.ServiceReference;
-public class DecorationPanel extends Panel {
+public class ServiceConsumerPanel extends Panel {
private static final long serialVersionUID = 1L;
- public DecorationPanel(String id, IModel<Bundle> model, List<IDecorationProvider> decorationProviders) {
+ public ServiceConsumerPanel(String id, IModel<ServiceReference> model) {
super(id, model);
- add(CSSPackageResource.getHeaderContribution(DecorationPanel.class, "decoration.css"));
-
- List<Component> components = new ArrayList<Component>();
- for (IDecorationProvider provider : decorationProviders) {
- Component decoration = provider.getDecoration("extension", model);
- if (decoration != null) {
- components.add(decoration);
- }
+ List<Bundle> consumers = new ArrayList<Bundle>();
+ Bundle[] usingBundles = model.getObject().getUsingBundles();
+ if (usingBundles != null && usingBundles.length > 0) {
+ Collections.addAll(consumers, usingBundles);
}
+ add(new ListView<Bundle>("bundles", consumers) {
+ private static final long serialVersionUID = 1L;
- add(new ListView<Component>("extensions", components) {
@Override
- protected void populateItem(ListItem<Component> item) {
- item.add(item.getModelObject());
+ protected void populateItem(ListItem<Bundle> item) {
+ Link<SingleBundlePage> link = SingleBundlePage.createLink("link", item.getModelObject());
+ link.add(new Label("label", item.getModelObject().getSymbolicName()));
+ item.add(link);
}
});
-
}
}
Added: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServicePropertyColumn.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServicePropertyColumn.java?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServicePropertyColumn.java (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServicePropertyColumn.java Mon Feb 20 07:41:08 2012
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.karaf.webconsole.osgi.core.service.column;
+
+import java.io.Serializable;
+
+import org.apache.karaf.webconsole.core.table.PropertyColumnExt;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
+import org.osgi.framework.ServiceReference;
+
+public class ServicePropertyColumn extends PropertyColumnExt<ServiceReference> {
+
+ private static final long serialVersionUID = 1L;
+
+ public ServicePropertyColumn(String label, String property) {
+ super(label, property);
+ }
+
+ @Override
+ protected IModel<?> createLabelModel(IModel<ServiceReference> rowModel) {
+ Object property = rowModel.getObject().getProperty(getPropertyExpression());
+
+ if (property instanceof Serializable) {
+ return Model.of((Serializable) property);
+ } else {
+ return Model.of(property.toString());
+ }
+ }
+}
Added: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderColumn.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderColumn.java?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderColumn.java (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderColumn.java Mon Feb 20 07:41:08 2012
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.karaf.webconsole.osgi.core.service.column;
+
+import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
+import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
+import org.apache.wicket.markup.repeater.Item;
+import org.apache.wicket.model.IModel;
+import org.osgi.framework.ServiceReference;
+
+public class ServiceProviderColumn extends AbstractColumn<ServiceReference> {
+
+ private static final long serialVersionUID = 1L;
+
+ public ServiceProviderColumn(IModel<String> displayModel) {
+ super(displayModel);
+ }
+
+ public void populateItem(Item<ICellPopulator<ServiceReference>> cellItem, String componentId, IModel<ServiceReference> rowModel) {
+ cellItem.add(new ServiceProviderPanel(componentId, rowModel));
+ }
+
+}
Added: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.java?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.java (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.java Mon Feb 20 07:41:08 2012
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.karaf.webconsole.osgi.core.service.column;
+
+import org.apache.karaf.webconsole.osgi.core.bundle.SingleBundlePage;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.link.Link;
+import org.apache.wicket.markup.html.panel.Panel;
+import org.apache.wicket.model.IModel;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.ServiceReference;
+
+public class ServiceProviderPanel extends Panel {
+
+ private static final long serialVersionUID = 1L;
+
+ public ServiceProviderPanel(String id, IModel<ServiceReference> model) {
+ super(id);
+
+ Bundle bundle = model.getObject().getBundle();
+ Link<SingleBundlePage> link = SingleBundlePage.createLink("link", bundle);
+ link.add(new Label("label", bundle.getSymbolicName()));
+ add(link);
+ }
+
+}
Modified: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/list/ServicePage.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/list/ServicePage.java?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/list/ServicePage.java (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/service/list/ServicePage.java Mon Feb 20 07:41:08 2012
@@ -17,15 +17,16 @@
package org.apache.karaf.webconsole.osgi.core.service.list;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.List;
-import org.apache.karaf.webconsole.core.table.PropertyColumnExt;
+import org.apache.karaf.webconsole.osgi.core.service.column.ObjectClassColumn;
+import org.apache.karaf.webconsole.osgi.core.service.column.ServiceConsumerColumn;
+import org.apache.karaf.webconsole.osgi.core.service.column.ServicePropertyColumn;
+import org.apache.karaf.webconsole.osgi.core.service.column.ServiceProviderColumn;
import org.apache.karaf.webconsole.osgi.core.shared.OsgiPage;
import org.apache.karaf.webconsole.osgi.core.shared.ServiceDataProvider;
import org.apache.wicket.extensions.markup.html.repeater.data.table.DefaultDataTable;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
-import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.ops4j.pax.wicket.api.PaxWicketMountPoint;
import org.osgi.framework.Constants;
@@ -39,22 +40,12 @@ public class ServicePage extends OsgiPag
public ServicePage() {
List<IColumn<ServiceReference>> columns = new ArrayList<IColumn<ServiceReference>>();
- columns.add(new PropertyColumnExt<ServiceReference>("Service Id") {
- @Override
- protected IModel<?> createLabelModel(IModel<ServiceReference> rowModel) {
- return Model.of((Long) rowModel.getObject().getProperty(Constants.SERVICE_ID));
- }
- });
-
- columns.add(new PropertyColumnExt<ServiceReference>("Interfaces") {
- @Override
- protected IModel<?> createLabelModel(IModel<ServiceReference> rowModel) {
- return Model.of(Arrays.toString((String[]) rowModel.getObject().getProperty(Constants.OBJECTCLASS)));
- }
- });
- columns.add(new PropertyColumnExt<ServiceReference>("Exporter", "bundle.symbolicName"));
+ columns.add(new ServicePropertyColumn("Service Id", Constants.SERVICE_ID));
+ columns.add(new ObjectClassColumn(Model.of("Object classes")));
+ columns.add(new ServiceProviderColumn(Model.of("Provider")));
+ columns.add(new ServiceConsumerColumn("Consumers"));
- add(new DefaultDataTable<ServiceReference>("services", columns, new ServiceDataProvider(context, (String) null), 100));
+ add(new DefaultDataTable<ServiceReference>("services", columns, new ServiceDataProvider(context, (String) null), Integer.MAX_VALUE));
}
}
Modified: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/ServiceDataProvider.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/ServiceDataProvider.java?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/ServiceDataProvider.java (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/ServiceDataProvider.java Mon Feb 20 07:41:08 2012
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
package org.apache.karaf.webconsole.osgi.core.shared;
import java.util.ArrayList;
@@ -20,13 +36,10 @@ public class ServiceDataProvider extends
private static final long serialVersionUID = 1L;
- private transient List<ServiceReference> services;
-
- private BundleContext context;
-
- private final String clazz;
-
- private final String filter;
+ /**
+ * List of services.
+ */
+ private final transient List<ServiceReference> services;
/**
* Base constructor.
@@ -35,22 +48,25 @@ public class ServiceDataProvider extends
* @param clazz Class name.
* @param filter Filter to apply.
*/
+ public ServiceDataProvider(ServiceReference ... services) {
+ if (services != null) {
+ this.services = Arrays.asList(services);
+ } else {
+ this.services = new ArrayList<ServiceReference>();
+ }
+ }
+
public ServiceDataProvider(BundleContext context, String clazz, String filter) {
- this.context = context;
- this.clazz = clazz;
- this.filter = filter;
+ this(retrieveServices(context, clazz, filter));
}
- private List<ServiceReference> getServices() {
- if (services == null) {
- try {
- ServiceReference[] references = context.getServiceReferences(clazz, filter);
- this.services = references != null ? Arrays.asList(references) : new ArrayList<ServiceReference>();
- } catch (InvalidSyntaxException e) {
- throw new RuntimeException("Unable to list services", e);
- }
+ private static ServiceReference[] retrieveServices(BundleContext context, String clazz, String filter) {
+ try {
+ ServiceReference[] references = context.getServiceReferences(clazz, filter);
+ return references != null ? references : new ServiceReference[0];
+ } catch (InvalidSyntaxException e) {
+ throw new RuntimeException("Unable to list services", e);
}
- return services;
}
public ServiceDataProvider(BundleContext context, String clazz) {
@@ -67,7 +83,7 @@ public class ServiceDataProvider extends
// provide methods
public Iterator<? extends ServiceReference> iterator(int first, int count) {
- return getServices().subList(first, count).iterator();
+ return services.subList(first, count).iterator();
}
public IModel<ServiceReference> model(ServiceReference object) {
@@ -75,7 +91,7 @@ public class ServiceDataProvider extends
}
public int size() {
- return getServices().size();
+ return services.size();
}
}
Modified: karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/State.java
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/State.java?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/State.java (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/java/org/apache/karaf/webconsole/osgi/core/shared/State.java Mon Feb 20 07:41:08 2012
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
package org.apache.karaf.webconsole.osgi.core.shared;
import org.osgi.framework.Bundle;
Added: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/BundlePanel.html
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/BundlePanel.html?rev=1291139&view=auto
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/BundlePanel.html (added)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/BundlePanel.html Mon Feb 20 07:41:08 2012
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+<wicket:panel xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
+ <table class="table table-stipped table-bordered">
+ <tr>
+ <td><wicket:message key="bundle.id" /></td>
+ <td><span wicket:id="bundleId"></span></td>
+ </tr>
+ <tr>
+ <td><wicket:message key="bundle.symbolicName" /></td>
+ <td><span wicket:id="symbolicName"></span></td>
+ </tr>
+ <tr>
+ <td><wicket:message key="bundle.state" /></td>
+ <td><span wicket:id="state"></span></td>
+ </tr>
+ <tr>
+ <td><wicket:message key="bundle.version" /></td>
+ <td><span wicket:id="version"></span></td>
+ </tr>
+ <tr>
+ <td><wicket:message key="bundle.location" /></td>
+ <td><span wicket:id="location"></span></td>
+ </tr>
+ </table>
+ <a wicket:id="link">More</a>
+</wicket:panel>
\ No newline at end of file
Modified: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/SingleBundlePage.html
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/SingleBundlePage.html?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/SingleBundlePage.html (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/SingleBundlePage.html Mon Feb 20 07:41:08 2012
@@ -16,42 +16,59 @@
limitations under the License.
-->
<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
- <h1><span wicket:id="name">symbolic name</span> <small>details</small></h1>
+ <h1>
+ <wicket:message key="bundle" />
+ <span wicket:id="symbolicName"></span>
+ <small>
+ <span wicket:id="version"></span>
+ <wicket:message key="details" />
+ </small>
+ </h1>
+
+ <div wicket:id="bundle"></div>
<ul class="nav nav-pills">
<li class="active">
- <a href="#imports" data-toggle="tab">Imports</a>
+ <a href="#imports" data-toggle="tab">
+ <wicket:message key="package.imports" />
+ </a>
</li>
<li>
- <a href="#exports" data-toggle="tab">Exports</a>
+ <a href="#exports" data-toggle="tab">
+ <wicket:message key="package.exports" />
+ </a>
</li>
<li>
- <a href="#servicesIn" data-toggle="tab">Services in use</a>
+ <a href="#servicesIn" data-toggle="tab">
+ <wicket:message key="service.imports" />
+ </a>
</li>
<li>
- <a href="#servicesOut" data-toggle="tab">Services provided</a>
+ <a href="#servicesOut" data-toggle="tab">
+ <wicket:message key="service.exports" />
+ </a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="imports">
- <h2>Imports</h2>
+ <h2><wicket:message key="package.imports" /></h2>
<table wicket:id="imports" class="table table-stripped table-bordered"></table>
</div>
<div class="tab-pane" id="exports">
- <h3>Exports</h3>
+ <h3><wicket:message key="package.exports" /></h3>
<table wicket:id="exports" class="table table-stripped table-bordered"></table>
</div>
<div class="tab-pane" id="servicesIn">
- <h3>Services in use</h3>
-<!-- <div wicket:id="servicesIn"></div> -->
+ <h3><wicket:message key="service.imports" /></h3>
+ <table wicket:id="serviceImports" class="table table-stripped table-bordered"></table>
</div>
<div class="tab-pane" id="servicesOut">
- <h3>Services provided by bundle</h3>
-<!-- <div wicket:id="servicesOut"></div> -->
+ <h3><wicket:message key="service.exports" /></h3>
+ <table wicket:id="serviceExports" class="table table-stripped table-bordered"></table>
</div>
</div>
Modified: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/list/decoration.css
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/list/decoration.css?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/list/decoration.css (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/bundle/list/decoration.css Mon Feb 20 07:41:08 2012
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
div.decorations ul {
list-style-type: none;
margin: 0px;
Modified: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/package.properties
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/package.properties?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/package.properties (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/package.properties Mon Feb 20 07:41:08 2012
@@ -14,6 +14,12 @@
# limitations under the License.
bundle Bundle
+bundle.id Bundle ID
+bundle.symbolicName Symbolic name
+bundle.version Version
+bundle.state State
+bundle.location Location
+
bundle.install Install new bundle
bundle.start Bundle $\{symbolicName\} ($\{bundleId\}) started
@@ -32,4 +38,15 @@ bundle.refresh Bundle $\{symbolicName\}
bundle.refresh.fail Bundle refresh fail: ${message}
bundle.resolve Bundle $\{symbolicName\} ($\{bundleId\}) resolved
-bundle.resolve.fail Bundle resolving error: ${message}
\ No newline at end of file
+bundle.resolve.fail Bundle resolving error: ${message}
+
+package Package
+
+package.imports Imported packages
+package.exports Exported packages
+
+service.imports Imported services
+service.exports Exported services
+
+package.exporter Exporting bundle
+package.importers Importing bundles
\ No newline at end of file
Modified: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/PackagePage.html
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/PackagePage.html?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/PackagePage.html (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/PackagePage.html Mon Feb 20 07:41:08 2012
@@ -16,26 +16,36 @@
limitations under the License.
-->
<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
- <h1><span wicket:id="package"></span> <small><span wicket:id="version"></span> details</small></h1>
+ <h1>
+ <wicket:message key="package" />
+ <span wicket:id="package"></span>
+ <small>
+ <span wicket:id="version"></span>
+ <wicket:message key="details" />
+ </small>
+ </h1>
<div class="row-fluid">
- <div class="span4">
- <h2>Exporter</h2>
- <a wicket:id="exporterLink">
- <span wicket:id="exporterLabel"></span>
- </a>
- </div>
- <div class="span4">
- <h2>Package</h2>
- <span wicket:id="packageDet"></span>
+ <h2>
+ <wicket:message key="package" />
+ </h2>
+ <span wicket:id="packageDet"></span>
+ </div>
+
+ <div class="row-fluid">
+ <div class="span6">
+ <h2>
+ <wicket:message key="package.exporter" />
+ </h2>
+ <div wicket:id="exporter"></div>
</div>
- <div class="span4">
- <h2>Importer</h2>
- <ul>
+ <div class="span6">
+ <h2>
+ <wicket:message key="package.importers" />
+ </h2>
+ <ul class="unstyled">
<li wicket:id="importers">
- <a wicket:id="importerLink">
- <span wicket:id="importerLabel"></span>
- </a>
+ <div wicket:id="importer"></div>
</li>
</ul>
</div>
Copied: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/list/PackagePage.html (from r1291138, karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html)
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/list/PackagePage.html?p2=karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/list/PackagePage.html&p1=karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html&r1=1291138&r2=1291139&rev=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/pkg/list/PackagePage.html Mon Feb 20 07:41:08 2012
@@ -16,7 +16,9 @@
limitations under the License.
-->
<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
- <h1>Events</h1>
+ <h1>
+ <wicket:message key="package" />
+ </h1>
- <table wicket:id="topics" />
+ <table wicket:id="packages" class="table table-stripped table-condensed" />
</wicket:extend>
\ No newline at end of file
Copied: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.html (from r1291138, karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html)
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.html?p2=karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.html&p1=karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html&r1=1291138&r2=1291139&rev=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ObjectClassPanel.html Mon Feb 20 07:41:08 2012
@@ -15,8 +15,10 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
- <h1>Events</h1>
-
- <table wicket:id="topics" />
-</wicket:extend>
\ No newline at end of file
+<wicket:panel xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
+ <ul class="unstyled">
+ <li wicket:id="objectClasses">
+ <span wicket:id="objectClass"></span>
+ </li>
+ </ul>
+</wicket:panel>
\ No newline at end of file
Copied: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.html (from r1291138, karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html)
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.html?p2=karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.html&p1=karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html&r1=1291138&r2=1291139&rev=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceConsumerPanel.html Mon Feb 20 07:41:08 2012
@@ -15,8 +15,12 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
- <h1>Events</h1>
-
- <table wicket:id="topics" />
-</wicket:extend>
\ No newline at end of file
+<wicket:panel xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
+ <ul class="unstyled">
+ <li wicket:id="bundles">
+ <a wicket:id="link">
+ <span wicket:id="label"></span>
+ </a>
+ </li>
+ </ul>
+</wicket:panel>
\ No newline at end of file
Copied: karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.html (from r1291138, karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html)
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.html?p2=karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.html&p1=karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html&r1=1291138&r2=1291139&rev=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html (original)
+++ karaf/webconsole/trunk/osgi/core/src/main/resources/org/apache/karaf/webconsole/osgi/core/service/column/ServiceProviderPanel.html Mon Feb 20 07:41:08 2012
@@ -15,8 +15,8 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
- <h1>Events</h1>
-
- <table wicket:id="topics" />
-</wicket:extend>
\ No newline at end of file
+<wicket:panel xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
+ <a wicket:id="link">
+ <span wicket:id="label"></span>
+ </a>
+</wicket:panel>
\ No newline at end of file
Modified: karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html (original)
+++ karaf/webconsole/trunk/osgi/event/src/main/resources/org/apache/karaf/webconsole/osgi/event/EventsPage.html Mon Feb 20 07:41:08 2012
@@ -18,5 +18,5 @@
<wicket:extend xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
<h1>Events</h1>
- <table wicket:id="topics" />
+ <table wicket:id="topics" class="table table-striped table-condensed" />
</wicket:extend>
\ No newline at end of file
Modified: karaf/webconsole/trunk/osgi/scr/src/main/resources/org/apache/karaf/webconsole/osgi/scr/decorator.css
URL: http://svn.apache.org/viewvc/karaf/webconsole/trunk/osgi/scr/src/main/resources/org/apache/karaf/webconsole/osgi/scr/decorator.css?rev=1291139&r1=1291138&r2=1291139&view=diff
==============================================================================
--- karaf/webconsole/trunk/osgi/scr/src/main/resources/org/apache/karaf/webconsole/osgi/scr/decorator.css (original)
+++ karaf/webconsole/trunk/osgi/scr/src/main/resources/org/apache/karaf/webconsole/osgi/scr/decorator.css Mon Feb 20 07:41:08 2012
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
.scr {
background: url("scr.gif");
width: 16px;