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 2011/08/18 21:40:49 UTC
svn commit: r1159373 - in /karaf/sandbox/pieber/karaf-webconsole/trunk: ./
core/src/main/java/org/apache/karaf/webconsole/core/
core/src/main/java/org/apache/karaf/webconsole/core/brand/
core/src/main/java/org/apache/karaf/webconsole/core/table/ core/s...
Author: ldywicki
Date: Thu Aug 18 19:40:46 2011
New Revision: 1159373
URL: http://svn.apache.org/viewvc?rev=1159373&view=rev
Log:
Merge with trunk.
Added:
karaf/sandbox/pieber/karaf-webconsole/trunk/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/BrandProvider.java
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/DefaultBrandProvider.java
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/ActionsPanel.html
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/actions.css
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/pom.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/branding/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.class
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/blueprint/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/blueprint/branding.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/pom.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/branding/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.java
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/blueprint/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/blueprint/branding.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/.DS_Store
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/logo.png
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/override.css
karaf/sandbox/pieber/karaf-webconsole/trunk/examples/pom.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/resources/org/apache/karaf/webconsole/karaf/internal/feature/features.css
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsActionPanel.java
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/DictionaryDataProvider.java
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.html
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/configurations.css
Removed:
karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/ActionsPanel.java
karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/ComponentType.java
karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/resources/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.html
Modified:
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/OSGI-INF/blueprint/core.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/BasePage.html
karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java
karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesPage.java
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/pom.xml
karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsPage.java
karaf/sandbox/pieber/karaf-webconsole/trunk/pom.xml
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/.DS_Store Thu Aug 18 19:40:46 2011 differ
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/BasePage.java Thu Aug 18 19:40:46 2011
@@ -4,10 +4,12 @@ import java.util.Arrays;
import java.util.List;
import java.util.Locale;
+import org.apache.karaf.webconsole.core.brand.BrandProvider;
import org.apache.karaf.webconsole.core.internal.LanguagePanel;
import org.apache.karaf.webconsole.core.navigation.ConsoleTab;
import org.apache.karaf.webconsole.core.navigation.markup.NavigationPanel;
import org.apache.wicket.ResourceReference;
+import org.apache.wicket.behavior.IBehavior;
import org.apache.wicket.markup.html.CSSPackageResource;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
@@ -21,6 +23,9 @@ public class BasePage extends WebPage {
@PaxWicketBean(name = "tabs")
private List<ConsoleTab> tabs;
+ @PaxWicketBean(name = "brandProvider")
+ private BrandProvider brandProvider;
+
// list of supported Locales - should be replaced by resolver/detector or something similar
private IModel<List<Locale>> supportedLocales = new ListModel<Locale>(Arrays.asList(Locale.FRENCH, Locale.ENGLISH));
@@ -28,13 +33,17 @@ public class BasePage extends WebPage {
add(CSSPackageResource.getHeaderContribution(BasePage.class, "style.css"));
add(CSSPackageResource.getHeaderContribution(BasePage.class, "grid.css"));
- add(new Label("footer", "Apache Karaf Console"));
+ add(brandProvider.getHeaderImage("logo"));
- add(new Image("karafLogo", new ResourceReference(BasePage.class, "images/karaf-logo.png")));
+ add(new Label("footer", "Apache Karaf Console"));
add(new LanguagePanel("languagePanel", supportedLocales));
add(new NavigationPanel("navigationPanel", new ListModel<ConsoleTab>(tabs)));
+
+ for (IBehavior behavior : brandProvider.getBehaviors()) {
+ add(behavior);
+ }
}
}
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/BrandProvider.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/BrandProvider.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/BrandProvider.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/BrandProvider.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,14 @@
+package org.apache.karaf.webconsole.core.brand;
+
+import java.util.List;
+
+import org.apache.wicket.behavior.IBehavior;
+import org.apache.wicket.markup.html.image.Image;
+
+public interface BrandProvider {
+
+ Image getHeaderImage(String imageId);
+
+ List<IBehavior> getBehaviors();
+
+}
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/DefaultBrandProvider.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/DefaultBrandProvider.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/DefaultBrandProvider.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/brand/DefaultBrandProvider.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,27 @@
+package org.apache.karaf.webconsole.core.brand;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.karaf.webconsole.core.BasePage;
+import org.apache.wicket.ResourceReference;
+import org.apache.wicket.behavior.IBehavior;
+import org.apache.wicket.behavior.SimpleAttributeModifier;
+import org.apache.wicket.markup.html.image.Image;
+
+public class DefaultBrandProvider implements BrandProvider {
+
+ public Image getHeaderImage(String imageId) {
+ Image image = new Image(imageId, new ResourceReference(BasePage.class, "images/karaf-logo.png"));
+ image.add(new SimpleAttributeModifier("width", "150"));
+ image.add(new SimpleAttributeModifier("height", "70"));
+ image.add(new SimpleAttributeModifier("alt", "Karaf logo"));
+ image.add(new SimpleAttributeModifier("title", "Karaf logo"));
+ return image;
+ }
+
+ public List<IBehavior> getBehaviors() {
+ return Collections.emptyList();
+ }
+
+}
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/java/org/apache/karaf/webconsole/core/table/ActionsPanel.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,46 @@
+package org.apache.karaf.webconsole.core.table;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.wicket.behavior.SimpleAttributeModifier;
+import org.apache.wicket.markup.html.CSSPackageResource;
+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.apache.wicket.model.util.ListModel;
+
+/**
+ * Actions panel used to render actions in data table.
+ */
+@SuppressWarnings("rawtypes")
+public class ActionsPanel<T> extends Panel {
+
+ public ActionsPanel(String componentId, IModel<T> model) {
+ super(componentId, model);
+
+ add(CSSPackageResource.getHeaderContribution(ActionsPanel.class, "actions.css"));
+
+ final List<Link> links = getLinks(model.getObject(), "action");
+ add(new ListView<Link>("actions", new ListModel<Link>(links)) {
+ @Override
+ protected void populateItem(ListItem<Link> item) {
+ item.addOrReplace(item.getModelObject());
+
+ if (item.getIndex() == 0) {
+ item.add(new SimpleAttributeModifier("class", "first"));
+ } else if (item.getIndex() -1 == links.size()) {
+ item.add(new SimpleAttributeModifier("class", "last"));
+ } else {
+ item.add(new SimpleAttributeModifier("class", "node"));
+ }
+ }
+ });
+ }
+
+ protected List<Link> getLinks(T object, String id) {
+ return Collections.emptyList();
+ }
+}
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/OSGI-INF/blueprint/core.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/OSGI-INF/blueprint/core.xml?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/OSGI-INF/blueprint/core.xml (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/OSGI-INF/blueprint/core.xml Thu Aug 18 19:40:46 2011
@@ -18,4 +18,10 @@
</bean>
</service>
+ <service interface="org.apache.karaf.webconsole.core.brand.BrandProvider">
+ <bean class="org.apache.karaf.webconsole.core.brand.DefaultBrandProvider" />
+ </service>
+
+ <reference id="brandProvider" interface="org.apache.karaf.webconsole.core.brand.BrandProvider" />
+
</blueprint>
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/BasePage.html
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/BasePage.html?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/BasePage.html (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/BasePage.html Thu Aug 18 19:40:46 2011
@@ -9,7 +9,7 @@
<body>
<div class="container container_12">
<div class="grid_3">
- <img wicket:id="karafLogo" alt="karaf-logo" height="70" width="150" />
+ <img wicket:id="logo" />
</div>
<div class="grid_9">
<h3>Administration console</h3>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/ActionsPanel.html
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/ActionsPanel.html?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/ActionsPanel.html (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/ActionsPanel.html Thu Aug 18 19:40:46 2011
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <title>Karaf wicket console</title>
+</head>
+<body>
+
+ <wicket:panel>
+ <div class="actions">
+ <ul>
+ <li wicket:id="actions">
+ <a wicket:id="action">
+ <span wicket:id="label">label</span>
+ </a>
+ </li>
+ </ul>
+ </div>
+ </wicket:panel>
+
+</body>
+</html>
\ No newline at end of file
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/actions.css
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/actions.css?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/actions.css (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/core/src/main/resources/org/apache/karaf/webconsole/core/table/actions.css Thu Aug 18 19:40:46 2011
@@ -0,0 +1,13 @@
+div.actions ul {
+ margin: 0px;
+ padding: 0px;
+}
+
+div.actions ul li {
+ list-style-type: none;
+ display: inline;
+}
+
+div.actions ul li.node, div.actions ul li.last {
+ padding-left: 10px;
+}
\ No newline at end of file
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/pom.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/pom.xml?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/pom.xml (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/pom.xml Thu Aug 18 19:40:46 2011
@@ -0,0 +1,48 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.karaf.webconsole</groupId>
+ <artifactId>examples</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.karaf.webconsole.examples</groupId>
+ <artifactId>branding</artifactId>
+ <packaging>bundle</packaging>
+
+ <name>Apache Karaf :: Karaf Webconsole Prototype :: Examples :: Branding</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.karaf.webconsole</groupId>
+ <artifactId>org.apache.karaf.webconsole.core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.3.5</version>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
+ <Import-Package>
+ !org.apache.karaf.webconsole.examples.branding,
+ *,
+<!-- transient dependencies -->
+<!-- org.ops4j.pax.wicket.api, -->
+<!-- org.ops4j.pax.wicket.util, -->
+<!-- org.ops4j.pax.wicket.util.proxy -->
+ </Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.class
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.class?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.class (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.class Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/blueprint/branding.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/blueprint/branding.xml?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/blueprint/branding.xml (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/bin/src/main/resources/OSGI-INF/blueprint/branding.xml Thu Aug 18 19:40:46 2011
@@ -0,0 +1,11 @@
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
+
+ <service ref="brandProvider" interface="org.apache.karaf.webconsole.core.brand.BrandProvider">
+ <service-properties>
+ <entry key="service.ranging" value="1" />
+ </service-properties>
+ </service>
+
+ <bean id="brandProvider" class="org.apache.karaf.webconsole.examples.branding.ExampleBrandProvider" />
+
+</blueprint>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/pom.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/pom.xml?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/pom.xml (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/pom.xml Thu Aug 18 19:40:46 2011
@@ -0,0 +1,48 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.karaf.webconsole</groupId>
+ <artifactId>examples</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.karaf.webconsole.examples</groupId>
+ <artifactId>branding</artifactId>
+ <packaging>bundle</packaging>
+
+ <name>Apache Karaf :: Karaf Webconsole Prototype :: Examples :: Branding</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.karaf.webconsole</groupId>
+ <artifactId>org.apache.karaf.webconsole.core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.3.5</version>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
+ <Import-Package>
+ !org.apache.karaf.webconsole.examples.branding,
+ *,
+<!-- transient dependencies -->
+<!-- org.ops4j.pax.wicket.api, -->
+<!-- org.ops4j.pax.wicket.util, -->
+<!-- org.ops4j.pax.wicket.util.proxy -->
+ </Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/java/org/apache/karaf/webconsole/examples/branding/ExampleBrandProvider.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,24 @@
+package org.apache.karaf.webconsole.examples.branding;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.apache.karaf.webconsole.core.brand.BrandProvider;
+import org.apache.wicket.ResourceReference;
+import org.apache.wicket.behavior.IBehavior;
+import org.apache.wicket.markup.html.CSSPackageResource;
+import org.apache.wicket.markup.html.image.Image;
+
+public class ExampleBrandProvider implements BrandProvider {
+
+ public Image getHeaderImage(String imageId) {
+ return new Image(imageId, new ResourceReference(ExampleBrandProvider.class, "logo.png"));
+ }
+
+ public List<IBehavior> getBehaviors() {
+ List<IBehavior> behaviors = new LinkedList<IBehavior>();
+ behaviors.add(CSSPackageResource.getHeaderContribution(ExampleBrandProvider.class, "override.css"));
+ return behaviors;
+ }
+
+}
\ No newline at end of file
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/blueprint/branding.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/blueprint/branding.xml?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/blueprint/branding.xml (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/OSGI-INF/blueprint/branding.xml Thu Aug 18 19:40:46 2011
@@ -0,0 +1,11 @@
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
+
+ <service ref="brandProvider" interface="org.apache.karaf.webconsole.core.brand.BrandProvider">
+ <service-properties>
+ <entry key="service.ranging" value="1" />
+ </service-properties>
+ </service>
+
+ <bean id="brandProvider" class="org.apache.karaf.webconsole.examples.branding.ExampleBrandProvider" />
+
+</blueprint>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/.DS_Store
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/.DS_Store?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/.DS_Store (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/.DS_Store Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/logo.png
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/logo.png?rev=1159373&view=auto
==============================================================================
Files karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/logo.png (added) and karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/logo.png Thu Aug 18 19:40:46 2011 differ
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/override.css
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/override.css?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/override.css (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/branding/src/main/resources/org/apache/karaf/webconsole/examples/branding/override.css Thu Aug 18 19:40:46 2011
@@ -0,0 +1,3 @@
+body {
+ background-color: #DFEFF0;
+}
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/examples/pom.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/examples/pom.xml?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/examples/pom.xml (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/examples/pom.xml Thu Aug 18 19:40:46 2011
@@ -0,0 +1,21 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.karaf</groupId>
+ <artifactId>webconsole</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.karaf.webconsole</groupId>
+ <artifactId>examples</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Apache Karaf :: Karaf Webconsole Prototype :: Examples</name>
+
+ <modules>
+ <module>branding</module>
+ </modules>
+
+</project>
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesActionsPanel.java Thu Aug 18 19:40:46 2011
@@ -1,15 +1,19 @@
package org.apache.karaf.webconsole.karaf.internal.feature;
+import java.util.Arrays;
+import java.util.List;
+
import org.apache.karaf.features.FeaturesService;
+import org.apache.karaf.webconsole.core.table.ActionsPanel;
import org.apache.wicket.ResourceReference;
-import org.apache.wicket.markup.html.image.Image;
+import org.apache.wicket.behavior.SimpleAttributeModifier;
+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.ops4j.pax.wicket.api.PaxWicketBean;
-public class FeaturesActionsPanel extends Panel {
+public class FeaturesActionsPanel extends ActionsPanel<ExtendedFeature> {
@PaxWicketBean(name = "featuresService")
private FeaturesService featuresService;
@@ -18,13 +22,13 @@ public class FeaturesActionsPanel extend
private static ResourceReference INSTALL_IMG = new ResourceReference(FeaturesActionsPanel.class,"images/feature_install.png");
private static ResourceReference UNINSTALL_IMG = new ResourceReference(FeaturesActionsPanel.class,"images/feature_uninstall.png");
- public FeaturesActionsPanel(String componentId, IModel<?> model) {
-
- super(componentId);
-
- this.extendedFeature = (ExtendedFeature)model.getObject();
+ public FeaturesActionsPanel(String componentId, IModel<ExtendedFeature> model) {
+ super(componentId, model);
+ }
- Link link = new Link("link") {
+ @Override
+ protected List<Link> getLinks(ExtendedFeature object, String id) {
+ Link link = new Link(id) {
@Override
public void onClick() {
@@ -44,15 +48,13 @@ public class FeaturesActionsPanel extend
}
};
- add(link);
+ link.add(new SimpleAttributeModifier("class", object.getState().name().toLowerCase()));
+ link.add(new Label("label"));
// add image to the link
- link.add(new Image("actionButton", getImage(extendedFeature.getState())));
-
-
+ return Arrays.asList(link);
}
-
protected ResourceReference getImage(final ExtendedFeature.State action) {
final ResourceReference image;
switch (action) {
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesPage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesPage.java?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesPage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/java/org/apache/karaf/webconsole/karaf/internal/feature/FeaturesPage.java Thu Aug 18 19:40:46 2011
@@ -1,17 +1,22 @@
package org.apache.karaf.webconsole.karaf.internal.feature;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Iterator;
+import java.util.List;
+
import org.apache.karaf.features.Feature;
import org.apache.karaf.features.FeaturesService;
import org.apache.karaf.features.Repository;
import org.apache.karaf.webconsole.core.BasePage;
-import org.apache.karaf.webconsole.karaf.internal.ActionsPanel;
-import org.apache.karaf.webconsole.karaf.internal.ComponentType;
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.extensions.markup.html.repeater.data.table.DefaultDataTable;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvider;
+import org.apache.wicket.markup.html.CSSPackageResource;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.model.IModel;
@@ -20,8 +25,6 @@ import org.apache.wicket.model.ResourceM
import org.apache.wicket.model.StringResourceModel;
import org.ops4j.pax.wicket.api.PaxWicketBean;
-import java.util.*;
-
/**
* Features
*/
@@ -31,6 +34,7 @@ public class FeaturesPage extends BasePa
private FeaturesService featuresService;
public FeaturesPage() throws Exception {
+ add(CSSPackageResource.getHeaderContribution(FeaturesPage.class, "features.css"));
// Create a form for external Submit link
Form<?> form = new Form("form");
@@ -66,7 +70,7 @@ public class FeaturesPage extends BasePa
columns.add(new PropertyColumn<ExtendedFeature>(new StringResourceModel("table.state", this, state), "state", "state"));
columns.add(new AbstractColumn<ExtendedFeature>(new ResourceModel("table.actions")) {
public void populateItem(Item<ICellPopulator<ExtendedFeature>> cellItem, String componentId, IModel<ExtendedFeature> model) {
- cellItem.add(new ActionsPanel(componentId, model, ComponentType.FEATURES));
+ cellItem.add(new FeaturesActionsPanel(componentId, model));
}
});
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/resources/org/apache/karaf/webconsole/karaf/internal/feature/features.css
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/resources/org/apache/karaf/webconsole/karaf/internal/feature/features.css?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/resources/org/apache/karaf/webconsole/karaf/internal/feature/features.css (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/karaf/src/main/resources/org/apache/karaf/webconsole/karaf/internal/feature/features.css Thu Aug 18 19:40:46 2011
@@ -0,0 +1,13 @@
+div.actions ul li a {
+ width: 16px;
+ height: 16px;
+ display: block;
+}
+
+div.actions ul li a.installed {
+ background: url("images/feature_uninstall.png");
+}
+
+div.actions ul li a.uninstalled {
+ background: url("images/feature_install.png");
+}
\ No newline at end of file
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/pom.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/pom.xml?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/pom.xml (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/pom.xml Thu Aug 18 19:40:46 2011
@@ -37,37 +37,13 @@
<configuration>
<instructions>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
- <!-- The bundle activator is only required if we
- do the things by hand. -->
<Import-Package>
+ !org.apache.karaf.webconsole.osgi*,
*,<!-- let bnd import direct dependencies -->
- org.apache.wicket.settings,
- org.apache.wicket.session,
- org.apache.wicket.util.file,
- org.apache.wicket.request,
- org.apache.wicket.ajax,
- org.apache.wicket.markup,
- org.apache.wicket.markup.html.link,
- org.apache.wicket.session.pagemap,
- org.apache.wicket.protocol.http,
- org.apache.wicket.markup.html.internal,
- org.apache.wicket.util.convert,
- org.apache.wicket.markup.html,
- <!-- then wicket stuff -->
+ <!-- transient dependencies -->
org.ops4j.pax.wicket.api,
org.ops4j.pax.wicket.util,
- org.ops4j.pax.wicket.util.proxy,
- <!-- osgi stuff -->
- org.osgi.framework,
- org.osgi.service.blueprint,
- org.osgi.service.startlevel,
- <!-- cglib -->
- net.sf.cglib.proxy;version="[2,3)",
- net.sf.cglib.core;version="[2,3)",
- net.sf.cglib.reflect;version="[2,3)",
- <!-- and servlet api -->
- javax.servlet,
- javax.servlet.http
+ org.ops4j.pax.wicket.util.proxy
</Import-Package>
</instructions>
</configuration>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,75 @@
+package org.apache.karaf.webconsole.osgi.internal.configuration;
+
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Dictionary;
+import java.util.Enumeration;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import org.apache.karaf.webconsole.osgi.internal.OsgiPage;
+import org.apache.wicket.PageParameters;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.TextField;
+import org.apache.wicket.markup.html.list.ListItem;
+import org.apache.wicket.markup.html.list.ListView;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.model.util.ListModel;
+import org.ops4j.pax.wicket.api.PaxWicketBean;
+import org.osgi.service.cm.Configuration;
+import org.osgi.service.cm.ConfigurationAdmin;
+
+public class ConfigurationEditPage extends OsgiPage {
+
+ @PaxWicketBean(name = "configurationAdmin")
+ private ConfigurationAdmin configurationAdmin;
+
+ public ConfigurationEditPage(PageParameters params) {
+ String pid = params.getString("pid");
+
+ add(new Label("pid", pid));
+
+ try {
+ add(form(configurationAdmin.getConfiguration(pid)));
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ private Form form(Configuration configuration) {
+ Form<Configuration> form = new Form<Configuration>("edit");
+
+ form.add(new TextField<String>("pid", Model.of(configuration.getPid())) {
+ @Override
+ public boolean isEnabled() {
+ return false;
+ }
+ });
+
+ Dictionary<String, Serializable> properties = configuration.getProperties();
+
+ Map<String, Serializable> map = new LinkedHashMap<String, Serializable>();
+ Enumeration<String> keys = properties.keys();
+ while (keys.hasMoreElements()) {
+ String key = keys.nextElement();
+ map.put(key, properties.get(key));
+ }
+ List<Entry<String, Serializable>> list = new ArrayList<Entry<String, Serializable>>(map.entrySet());
+
+ form.add(new ListView<Entry<String, Serializable>>("properties", new ListModel<Entry<String, Serializable>>(list)) {
+ @Override
+ protected void populateItem(ListItem<Entry<String, Serializable>> item) {
+ item.add(new Label("key", item.getModelObject().getKey()));
+ item.add(new TextField<String>("value", new Model(item.getModelObject().getValue())));
+ }
+ });
+
+ return form;
+ }
+
+}
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsActionPanel.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsActionPanel.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsActionPanel.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsActionPanel.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,40 @@
+package org.apache.karaf.webconsole.osgi.internal.configuration;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.karaf.webconsole.core.table.ActionsPanel;
+import org.apache.wicket.PageParameters;
+import org.apache.wicket.behavior.SimpleAttributeModifier;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.markup.html.link.Link;
+import org.apache.wicket.model.IModel;
+import org.osgi.service.cm.Configuration;
+
+@SuppressWarnings("rawtypes")
+class ConfigurationsActionPanel extends ActionsPanel<Configuration> {
+
+ public ConfigurationsActionPanel(String componentId, IModel<Configuration> model) {
+ super(componentId, model);
+ }
+
+ @Override
+ protected List<Link> getLinks(Configuration object, String id) {
+ PageParameters params = new PageParameters();
+ params.put("pid", object.getPid());
+
+ Link removeLink = new Link(id) {
+ @Override
+ public void onClick() {
+ }
+ };
+ removeLink.add(new SimpleAttributeModifier("class", "remove"));
+ removeLink.add(new Label("label", "remove"));
+
+ Link editLink = new BookmarkablePageLink<ConfigurationEditPage>(id, ConfigurationEditPage.class, params);
+ editLink.add(new Label("label", "edit"));
+
+ return Arrays.asList(editLink, removeLink);
+ }
+}
\ No newline at end of file
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsPage.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsPage.java?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsPage.java (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationsPage.java Thu Aug 18 19:40:46 2011
@@ -10,6 +10,7 @@ import org.apache.wicket.extensions.mark
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.extensions.markup.html.repeater.data.table.PropertyColumn;
+import org.apache.wicket.markup.html.CSSPackageResource;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.model.IModel;
@@ -25,6 +26,7 @@ public class ConfigurationsPage extends
private ConfigurationAdmin configurationAdmin;
public ConfigurationsPage() {
+ add(CSSPackageResource.getHeaderContribution(ConfigurationsPage.class, "configurations.css"));
Configuration[] configurations = new Configuration[0];
try {
@@ -41,7 +43,7 @@ public class ConfigurationsPage extends
columns.add(new PropertyColumn<Configuration>(pid, "pid"));
columns.add(new AbstractColumn<Configuration>(Model.of("operations")) {
public void populateItem(Item<ICellPopulator<Configuration>> cellItem, String componentId, IModel<Configuration> model) {
- cellItem.add(new Label("info", "operation"));
+ cellItem.add(new ConfigurationsActionPanel(componentId, model));
}
});
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/DictionaryDataProvider.java
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/DictionaryDataProvider.java?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/DictionaryDataProvider.java (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/java/org/apache/karaf/webconsole/osgi/internal/configuration/DictionaryDataProvider.java Thu Aug 18 19:40:46 2011
@@ -0,0 +1,67 @@
+package org.apache.karaf.webconsole.osgi.internal.configuration;
+
+import java.io.Serializable;
+import java.util.Dictionary;
+import java.util.Enumeration;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import org.apache.wicket.markup.repeater.data.IDataProvider;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
+
+public class DictionaryDataProvider<K extends Serializable, V extends Serializable> implements IDataProvider<Entry<K, V>> {
+
+ private Map<K, V> map = new LinkedHashMap<K, V>();
+
+ public DictionaryDataProvider(Dictionary<K, V> properties) {
+ Enumeration<K> keys = properties.keys();
+
+ while (keys.hasMoreElements()) {
+ K key = keys.nextElement();
+ map.put(key, properties.get(key));
+ }
+ }
+
+ public void detach() {
+
+ }
+
+ public Iterator<? extends Entry<K, V>> iterator(int first, int count) {
+ return map.entrySet().iterator();
+ }
+
+ public IModel<Entry<K, V>> model(Entry<K, V> object) {
+ return new Model(new SerializableEntry<K, V>(object));
+ }
+
+ public int size() {
+ return 0;
+ }
+
+ class SerializableEntry<K extends Serializable, V extends Serializable> implements Entry<K, V>, Serializable {
+
+ private Entry<K, V> entries;
+
+ public SerializableEntry(Entry<K, V> object) {
+ this.entries = object;
+ }
+
+ public K getKey() {
+ return entries.getKey();
+ }
+
+ public V getValue() {
+ return entries.getValue();
+ }
+
+ public V setValue(V value) {
+ return entries.setValue(value);
+ }
+
+
+ }
+
+}
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.html
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.html?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.html (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/ConfigurationEditPage.html Thu Aug 18 19:40:46 2011
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd" >
+ <wicket:head>
+ <title>Karaf Wicket console</title>
+ </wicket:head>
+
+ <body>
+
+ <wicket:extend>
+ <h1>Edit <span wicket:id="pid">org.apache.felix.filemount</span></h1>
+
+ <form wicket:id="edit">
+ <input type="text" wicket:id="pid" style="width: 100%" />
+
+ <ul>
+ <li wicket:id="properties">
+ <div class="grid_9">
+ <div class="grid_9">
+ <span wicket:id="key" style="width: 100%">key</span>
+ </div>
+ <input type="text" wicket:id="value" style="width: 100%" />
+ </div>
+ </li>
+ </ul>
+ </form>
+ </wicket:extend>
+ </body>
+</html>
Added: karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/configurations.css
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/configurations.css?rev=1159373&view=auto
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/configurations.css (added)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/osgi/src/main/resources/org/apache/karaf/webconsole/osgi/internal/configuration/configurations.css Thu Aug 18 19:40:46 2011
@@ -0,0 +1,3 @@
+a.remove {
+ color: red;
+}
\ No newline at end of file
Modified: karaf/sandbox/pieber/karaf-webconsole/trunk/pom.xml
URL: http://svn.apache.org/viewvc/karaf/sandbox/pieber/karaf-webconsole/trunk/pom.xml?rev=1159373&r1=1159372&r2=1159373&view=diff
==============================================================================
--- karaf/sandbox/pieber/karaf-webconsole/trunk/pom.xml (original)
+++ karaf/sandbox/pieber/karaf-webconsole/trunk/pom.xml Thu Aug 18 19:40:46 2011
@@ -24,6 +24,8 @@
<module>blueprint</module>
<module>karaf</module>
<module>features</module>
+
+ <module>examples</module>
</modules>
<build>