You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2011/02/04 18:34:28 UTC

svn commit: r1067233 [3/7] - in /cxf/trunk: distribution/src/main/release/samples/ distribution/src/main/release/samples/logbrowser/ distribution/src/main/release/samples/logbrowser/src/ distribution/src/main/release/samples/logbrowser/src/demo/ distri...

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/BootstrapStorage.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/BootstrapStorage.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/BootstrapStorage.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/BootstrapStorage.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,222 @@
+/**
+ * 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.cxf.management.web.browser.bootstrapping;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import java.net.JarURLConnection;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import java.util.zip.GZIPOutputStream;
+import javax.ws.rs.Consumes;
+import javax.ws.rs.GET;
+import javax.ws.rs.PUT;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
+import javax.ws.rs.core.Variant;
+import javax.ws.rs.ext.MessageBodyWriter;
+import javax.ws.rs.ext.Provider;
+
+import org.apache.commons.lang.Validate;
+import org.apache.cxf.common.logging.LogUtils;
+import org.apache.cxf.helpers.IOUtils;
+import org.apache.cxf.jaxrs.ext.MessageContext;
+import org.apache.cxf.jaxrs.provider.JSONProvider;
+
+@Path("/browser")
+public class BootstrapStorage {
+    private static final Logger LOGGER = LogUtils.getL7dLogger(BootstrapStorage.class);
+    private final SettingsStorage storage;
+    
+    public BootstrapStorage(final SettingsStorage storage) {
+        Validate.notNull(storage, "provider is null");
+        
+        this.storage = storage;
+    }
+
+    @GET
+    @Path("/settings/{username}")
+    @Produces("application/json")
+    @AuthenticationRequired
+    public Settings getSettings(@PathParam("username") final String username) {
+        Validate.notNull(username, "username is null");
+        Validate.notEmpty(username, "username is empty");
+        
+        LOGGER.fine(String.format("Retrieve settings, user='%s'", username));
+        
+        return storage.getSettings(username);
+    }
+
+    @PUT
+    @Path("/settings/{username}")
+    @Consumes("application/json")
+    @AuthenticationRequired
+    public Response setSettings(@PathParam("username") final String username, final Settings settings) {
+        Validate.notNull(username, "username is null");
+        Validate.notEmpty(username, "username is empty");
+        Validate.notNull(settings, "settings is null");
+        
+        LOGGER.fine(String.format("Save settings, user='%s'; settings='%s'", username, settings));
+
+        storage.setSettings(username, settings);
+        return Response.ok().build();
+    }
+
+    @GET
+    @Path("{resource:.*}")
+    public Response getResource(@Context final MessageContext mc,
+                                @PathParam("resource") final String resource) {
+        if (isLastModifiedRequest(mc)) {
+            return Response.notModified().build();
+        }
+
+        try {
+            URL url;
+            URL jar = getClass().getProtectionDomain().getCodeSource().getLocation();            
+
+            url = new URL(String.format("jar:%s!/static-content/logbrowser/%s", jar, resource));
+
+            JarURLConnection connection = (JarURLConnection) url.openConnection();
+            if (connection.getContentLength() == -1 || connection.getJarEntry() == null) {
+                return Response.status(Status.NOT_FOUND).build();
+            } else if (connection.getJarEntry().isDirectory()) {
+                return Response.status(Status.FORBIDDEN).build();
+            } else { // correct
+                MediaType mime = getMimeType(mc, resource);
+                StaticFile staticFile = new StaticFile(url, acceptsGzip(mc), mime);
+                
+                Response.ResponseBuilder builder = Response.ok(staticFile);
+                builder.variant(new Variant(mime , null, staticFile.isGzipEnabled() ? "gzip" : null));
+
+                return builder.build();
+            }
+        } catch (MalformedURLException e) {
+            return Response.status(Status.BAD_REQUEST).build();
+        } catch (IOException e) {
+            LOGGER.log(Level.SEVERE, "Error occur while retrieve static file", e);
+            return Response.serverError().build();
+        }
+    }
+
+    private boolean isLastModifiedRequest(final MessageContext mc) {
+        return mc.getHttpServletRequest().getHeader("Last-Modified") != null;
+    }
+
+    private MediaType getMimeType(final MessageContext mc, final String resource) {
+        return MediaType.valueOf(mc.getServletContext().getMimeType(resource));
+    }
+
+    private boolean acceptsGzip(final MessageContext mc) {
+        String ae = mc.getHttpServletRequest().getHeader("Accept-Encoding");
+        return ae != null && ae.contains("gzip");
+    }
+
+    private final class StaticFile {
+        private URL url;
+        private boolean isGzipEnabled;
+
+        private StaticFile(URL url, boolean acceptsGzip, MediaType mime) {
+            assert url != null;
+            assert mime != null;
+
+            this.url = url;
+            this.isGzipEnabled = acceptsGzip && "text".equals(mime.getType());
+        }
+
+        public URL getUrl() {
+            return this.url;
+        }
+
+        public boolean isGzipEnabled() {
+            return this.isGzipEnabled;
+        }
+    }
+
+    @Provider
+    public static class StaticFileProvider implements MessageBodyWriter<StaticFile> {
+        
+        public boolean isWriteable(final Class<?> type, final Type genericType,
+                                   final Annotation[] annotations, final MediaType mediaType) {
+            return StaticFile.class.isAssignableFrom(type);
+        }
+
+        public long getSize(final StaticFile staticFile, final Class<?> type, final Type genericType,
+                            final Annotation[] annotations, final MediaType mediaType) {
+            return -1;
+        }
+
+        public void writeTo(final StaticFile staticFile, final Class<?> clazz, final Type genericType,
+                            final Annotation[] annotations, final MediaType type,
+                            final MultivaluedMap<String, Object> headers, final OutputStream os)
+            throws IOException {
+
+            if (staticFile.isGzipEnabled()) {
+                GZIPOutputStream gzip = new GZIPOutputStream(os);
+                try {
+                    IOUtils.copyAndCloseInput(staticFile.getUrl().openStream(), gzip);
+                } finally {
+                    gzip.finish();
+                }
+            } else {
+                IOUtils.copyAndCloseInput(staticFile.getUrl().openStream(), os);
+            }
+        }
+    }
+
+    @Provider
+    public static class SettingsProvider extends JSONProvider {
+        private static final String LOGGING_NAMESPACE = "http://cxf.apache.org/log";
+        private static final String SUBSCRIPTIONS_ARRAY = "subscriptions";
+
+        public SettingsProvider() {
+            setIgnoreNamespaces(true);
+
+            // Solved common JSON's problem with parsing array, which has only one element 
+            setSerializeAsArray(true);
+            setArrayKeys(Arrays.asList(SUBSCRIPTIONS_ARRAY));
+
+            // Removes namespace from output
+            setOutTransformElements(new HashMap<String, String>() {
+                {
+                    put("{" + LOGGING_NAMESPACE + "}*", "*");
+                }
+            });
+
+            // Adds namespace to input
+            setInTransformElements(new HashMap<String, String>() {
+                {
+                    put("*", "{" + LOGGING_NAMESPACE + "}*");
+                }
+            });
+        }
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/BootstrapStorage.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/BootstrapStorage.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Settings.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Settings.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Settings.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Settings.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,42 @@
+/**
+ * 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.cxf.management.web.browser.bootstrapping;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+
+@XmlRootElement(namespace = "http://cxf.apache.org/log")
+public class Settings {
+    private List<Subscription> subscriptions;
+
+    @XmlElement(name = "subscriptions", namespace = "http://cxf.apache.org/log")
+    public List<Subscription> getSubscriptions() {
+        if (subscriptions == null) {
+            subscriptions = new ArrayList<Subscription>();
+        }
+        return subscriptions;
+    }
+
+    public void setSubscriptions(List<Subscription> subscriptions) {
+        this.subscriptions = subscriptions;
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Settings.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Settings.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SettingsStorage.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SettingsStorage.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SettingsStorage.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SettingsStorage.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.bootstrapping;
+
+public interface SettingsStorage {
+    Settings getSettings(String username);
+
+    void setSettings(String username, Settings settings);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SettingsStorage.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SettingsStorage.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleAuthenticationFilter.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleAuthenticationFilter.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleAuthenticationFilter.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleAuthenticationFilter.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,65 @@
+/**
+ * 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.cxf.management.web.browser.bootstrapping;
+
+import java.util.Map;
+import java.util.logging.Logger;
+
+import javax.ws.rs.ext.Provider;
+
+import org.apache.commons.lang.Validate;
+import org.apache.cxf.common.logging.LogUtils;
+import org.apache.cxf.configuration.security.AuthorizationPolicy;
+import org.apache.cxf.jaxrs.model.ClassResourceInfo;
+import org.apache.cxf.message.Message;
+
+@Provider
+public class SimpleAuthenticationFilter extends AbstractAuthenticationFilter {
+    private static final Logger LOGGER = LogUtils.getL7dLogger(SimpleAuthenticationFilter.class);
+
+    private Map<String, String> authData;
+
+    public SimpleAuthenticationFilter(final Map<String, String> authData) {
+        Validate.notNull(authData, "authData is null");
+        this.authData = authData;
+    }
+
+    @Override
+    protected boolean authenticate(Message m, ClassResourceInfo resourceClass) {
+        assert authData != null;
+        AuthorizationPolicy policy = (AuthorizationPolicy) m.get(AuthorizationPolicy.class);
+        if (policy == null) {
+            LOGGER.fine("No authentication data'");
+            return false;
+        } else if (isValid(policy)) {
+            LOGGER.fine(String.format("Successful authentication, username='%s'", policy.getUserName()));
+            return true;
+        } else {
+            LOGGER.fine(String.format("Failed authentication, username='%s'", policy.getUserName()));
+            return false;
+        }
+    }
+
+    private boolean isValid(final AuthorizationPolicy policy) {
+        return authData.containsKey(policy.getUserName())
+            && authData.get(policy.getUserName()) != null
+            && authData.get(policy.getUserName()).equals(policy.getPassword());
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleAuthenticationFilter.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleAuthenticationFilter.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleXMLSettingsStorage.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleXMLSettingsStorage.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleXMLSettingsStorage.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleXMLSettingsStorage.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,199 @@
+/**
+ * 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.cxf.management.web.browser.bootstrapping;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.GregorianCalendar;
+import java.util.List;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.DatatypeFactory;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.apache.commons.lang.Validate;
+
+public class SimpleXMLSettingsStorage implements SettingsStorage {
+    private static final String DEFAULT_FILENAME = "logbrowser-settings.xml";
+    private static final Settings DEFAULT_SETTINGS = new Settings();
+
+    private final String filename;
+    private final Marshaller marshaller;
+
+    private Entries entries;
+
+    public SimpleXMLSettingsStorage() {
+        this(DEFAULT_FILENAME);
+    }
+
+    public SimpleXMLSettingsStorage(final String filename) {
+        Validate.notNull(filename, "filename is null");
+        Validate.notEmpty(filename, "filename is empty");
+        this.filename = filename;
+
+        try {
+            JAXBContext context = JAXBContext.newInstance(Entries.class, Entry.class,
+                    Settings.class, Subscription.class);
+
+            marshaller = context.createMarshaller();
+            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
+            
+            File file = new File(filename);
+            if (file.exists()) {
+                Unmarshaller unmarshaller = context.createUnmarshaller();
+                entries = (Entries) unmarshaller.unmarshal(file);
+            }
+
+            if (entries == null) {
+                entries = new Entries();
+            }
+        } catch (JAXBException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    public synchronized Settings getSettings(final String username) {
+        Validate.notNull(username, "username is null");
+        Validate.notEmpty(username, "username is empty");
+
+        Entry entry = getCachedEntry(username);
+        return entry != null ? entry.getSettings() : DEFAULT_SETTINGS;
+    }
+
+    public synchronized void setSettings(final String username, final Settings settings) {
+        Validate.notNull(username, "username is null");
+        Validate.notEmpty(username, "username is empty");
+
+        Entry entry = getCachedEntry(username);
+        if (entry != null) {
+            entry.setSettings(settings);
+            entry.setModified(getCurrentTime());
+        } else {
+            entries.getEntries().add(new Entry(username, getCurrentTime(), settings));
+        }
+
+        FileOutputStream outputStream = null;
+
+        try {
+            outputStream = new FileOutputStream(filename);
+            marshaller.marshal(entries, outputStream);
+        } catch (JAXBException e) {
+            throw new RuntimeException(e);
+        } catch (FileNotFoundException e) {
+            throw new RuntimeException(e);
+        } finally {
+            if (outputStream != null) {
+                try {
+                    outputStream.close();
+                } catch (IOException e) {
+                    throw new RuntimeException(e);
+                }
+            }
+        }
+    }
+
+    private Entry getCachedEntry(final String username) {
+        assert username != null;
+        assert !"".equals(username);
+
+        for (Entry entry : entries.getEntries()) {
+            if (username.equals(entry.getUsername())) {
+                return entry;
+            }
+        }
+        return null;
+    }
+
+    private XMLGregorianCalendar getCurrentTime() {
+        try {
+            return DatatypeFactory.newInstance()
+                .newXMLGregorianCalendar((GregorianCalendar) GregorianCalendar.getInstance());
+        } catch (DatatypeConfigurationException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    @XmlRootElement(namespace = "http://cxf.apache.org/log")
+    private static class Entries {
+        private List<Entry> entries;
+
+        @XmlElement(name = "entry", namespace = "http://cxf.apache.org/log")
+        public List<Entry> getEntries() {
+            if (entries == null) {
+                entries = new ArrayList<Entry>();
+            }
+            return this.entries;
+        }
+    }
+
+    @XmlRootElement(namespace = "http://cxf.apache.org/log")
+    @SuppressWarnings("unused")
+    private static class Entry {
+        private Settings settings;
+        private String username;
+        private XMLGregorianCalendar modified;
+
+        private Entry() { }
+
+        Entry(final String username, final XMLGregorianCalendar modified, final Settings settings) {
+            this.settings = settings;
+            this.username = username;
+            this.modified = modified;
+        }
+
+        @XmlElement(required = true, namespace = "http://cxf.apache.org/log")
+        public Settings getSettings() {
+            return settings;
+        }
+
+        public void setSettings(Settings value) {
+            this.settings = value;
+        }
+
+        @XmlAttribute(name = "username", namespace = "http://cxf.apache.org/log")
+        public String getUsername() {
+            return username;
+        }
+
+        public void setUsername(String value) {
+            this.username = value;
+        }
+
+        @XmlAttribute(name = "modified", namespace = "http://cxf.apache.org/log")
+        @XmlSchemaType(name = "date")        
+        public XMLGregorianCalendar getModified() {
+            return modified;
+        }
+
+        public void setModified(XMLGregorianCalendar value) {
+            this.modified = value;
+        }
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleXMLSettingsStorage.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/SimpleXMLSettingsStorage.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Subscription.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Subscription.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Subscription.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Subscription.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,55 @@
+/**
+ * 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.cxf.management.web.browser.bootstrapping;
+
+import javax.xml.bind.annotation.XmlElement;
+
+public class Subscription {
+    private String id;
+    private String name;
+    private String url;
+
+    @XmlElement(required = true, namespace = "http://cxf.apache.org/log")
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    @XmlElement(required = true, namespace = "http://cxf.apache.org/log")
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    @XmlElement(required = true, namespace = "http://cxf.apache.org/log")
+    public String getUrl() {
+        return url;
+    }
+
+    public void setUrl(String url) {
+        this.url = url;
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Subscription.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/bootstrapping/Subscription.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/DefaultEventBus.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/DefaultEventBus.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/DefaultEventBus.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/DefaultEventBus.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,34 @@
+/**
+ * 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.cxf.management.web.browser.client;
+
+import com.google.gwt.event.shared.HandlerManager;
+import com.google.inject.Inject;
+import com.google.inject.Singleton;
+
+@Singleton
+public class DefaultEventBus extends HandlerManager implements EventBus {
+
+    @Inject
+    public DefaultEventBus() {
+        super(null);
+    }
+
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/DefaultEventBus.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/DefaultEventBus.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Dispatcher.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Dispatcher.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Dispatcher.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Dispatcher.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,144 @@
+/**
+ * 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.cxf.management.web.browser.client;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
+import com.google.gwt.user.client.ui.RootLayoutPanel;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+
+import org.apache.cxf.management.web.browser.client.event.GoToAccessControlerEvent;
+import org.apache.cxf.management.web.browser.client.event.GoToAccessControlerEventHandler;
+import org.apache.cxf.management.web.browser.client.event.GoToBrowserEvent;
+import org.apache.cxf.management.web.browser.client.event.GoToBrowserEventHandler;
+import org.apache.cxf.management.web.browser.client.event.GoToEditCriteriaEvent;
+import org.apache.cxf.management.web.browser.client.event.GoToEditCriteriaEventHandler;
+import org.apache.cxf.management.web.browser.client.event.GoToSettingsEvent;
+import org.apache.cxf.management.web.browser.client.event.GoToSettingsEventHandler;
+import org.apache.cxf.management.web.browser.client.event.SignOutEvent;
+import org.apache.cxf.management.web.browser.client.event.SignOutEventHandler;
+import org.apache.cxf.management.web.browser.client.service.settings.Credentials;
+import org.apache.cxf.management.web.browser.client.service.settings.SettingsFacade;
+import org.apache.cxf.management.web.browser.client.service.settings.SettingsFacade.StorageStrategy;
+import org.apache.cxf.management.web.browser.client.ui.Presenter;
+import org.apache.cxf.management.web.browser.client.ui.accesscontroler.AccessControlPresenter;
+import org.apache.cxf.management.web.browser.client.ui.browser.BrowsePresenter;
+import org.apache.cxf.management.web.browser.client.ui.browser.EditCriteriaPresenter;
+import org.apache.cxf.management.web.browser.client.ui.settings.SettingsPresenter;
+
+
+
+public class Dispatcher {
+
+    @Nonnull
+    private final EventBus eventBus;
+
+    @Nonnull
+    private final Provider<AccessControlPresenter> accessControlProvider;
+
+    @Nonnull
+    private final Provider<BrowsePresenter> browseProvider;
+
+    @Nonnull
+    private final Provider<EditCriteriaPresenter> editCriteriaProvider;
+
+    @Nonnull
+    private final Provider<SettingsPresenter> settingsProvider;
+
+    @Nonnull
+    private final SettingsFacade settingsFacade;
+
+    @Nullable
+    private Presenter currentPresenter;
+
+    @Inject
+    public Dispatcher(@Nonnull final EventBus eventBus,
+                      @Nonnull final SettingsFacade settingsFacade,
+                      @Nonnull final Provider<AccessControlPresenter> accessControlProvider,
+                      @Nonnull final Provider<BrowsePresenter> browseProvider,
+                      @Nonnull final Provider<EditCriteriaPresenter> editCriteriaProvider,
+                      @Nonnull final Provider<SettingsPresenter> settingsProvider) {
+        this.eventBus = eventBus;
+        this.accessControlProvider = accessControlProvider;
+        this.browseProvider = browseProvider;
+        this.editCriteriaProvider = editCriteriaProvider;
+        this.settingsProvider = settingsProvider;
+        this.settingsFacade = settingsFacade;
+
+        bind();
+    }
+
+    public void start() {
+        if (settingsFacade.isSettingsAlreadyInLocalStorage()) {
+            settingsFacade.initialize(StorageStrategy.LOCAL_AND_REMOTE, Credentials.EMPTY);
+            eventBus.fireEvent(new GoToBrowserEvent());
+        } else {
+            go(accessControlProvider.get());
+        }
+    }
+
+    private void go(@Nonnull final Presenter newPresenter) {
+        if (currentPresenter != null) {
+            currentPresenter.unbind();
+        }
+
+        currentPresenter = newPresenter;
+
+        currentPresenter.go(RootLayoutPanel.get());
+    }
+
+    private void bind() {
+
+        eventBus.addHandler(GoToAccessControlerEvent.TYPE, new GoToAccessControlerEventHandler() {
+            public void onGoToAccessControler(@Nonnull final GoToAccessControlerEvent event) {
+                go(accessControlProvider.get());
+            }
+        });
+
+        eventBus.addHandler(GoToBrowserEvent.TYPE, new GoToBrowserEventHandler() {
+            public void onGoToBrowser(@Nonnull final GoToBrowserEvent event) {
+                go(browseProvider.get());
+            }
+        });
+
+        eventBus.addHandler(GoToEditCriteriaEvent.TYPE, new GoToEditCriteriaEventHandler() {
+            public void onGoToEditCriteria(@Nonnull final GoToEditCriteriaEvent event) {
+                go(editCriteriaProvider.get());
+            }
+        });
+
+        eventBus.addHandler(GoToSettingsEvent.TYPE, new GoToSettingsEventHandler() {
+
+            public void onGoToSettings(@Nonnull final GoToSettingsEvent event) {
+                go(settingsProvider.get());
+            }
+        });
+
+        eventBus.addHandler(SignOutEvent.TYPE, new SignOutEventHandler() {
+
+            public void onSignOut(@Nonnull final SignOutEvent event) {
+                settingsFacade.clearMemoryAndLocalStorage();
+                go(accessControlProvider.get());
+            }
+        });
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Dispatcher.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Dispatcher.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/EventBus.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/EventBus.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/EventBus.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/EventBus.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,39 @@
+/**
+ * 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.cxf.management.web.browser.client;
+
+import com.google.gwt.event.shared.EventHandler;
+import com.google.gwt.event.shared.GwtEvent;
+import com.google.gwt.event.shared.GwtEvent.Type;
+import com.google.gwt.event.shared.HandlerRegistration;
+
+public interface EventBus {
+
+    <H extends EventHandler> HandlerRegistration addHandler(Type<H> type, H handler);
+
+    void fireEvent(GwtEvent<?> event);
+
+    <H extends EventHandler> H getHandler(Type<H> type, int index);
+
+    int getHandlerCount(Type<?> type);
+
+    boolean isEventHandled(Type<?> e);
+
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/EventBus.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/EventBus.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Injector.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Injector.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Injector.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Injector.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,35 @@
+/**
+ * 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.cxf.management.web.browser.client;
+
+import com.google.gwt.inject.client.GinModules;
+import com.google.gwt.inject.client.Ginjector;
+
+import org.apache.cxf.management.web.browser.client.ui.ErrorDialog;
+import org.apache.cxf.management.web.browser.client.ui.resources.LogBrowserResources;
+
+@GinModules(Module.class)
+public interface Injector extends Ginjector {
+    Dispatcher getDispatcher();
+    
+    LogBrowserResources getResources();
+
+    ErrorDialog getErrorDialog();
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Injector.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Injector.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/LogBrowser.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/LogBrowser.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/LogBrowser.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/LogBrowser.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,48 @@
+/**
+ * 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.cxf.management.web.browser.client;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.core.client.EntryPoint;
+import com.google.gwt.core.client.GWT;
+
+import org.apache.cxf.management.web.browser.client.ui.ErrorDialog;
+
+public class LogBrowser implements EntryPoint {
+
+    @Nonnull
+    private final Injector injector = GWT.create(Injector.class);
+
+    public void onModuleLoad() {
+        injector.getResources().css().ensureInjected();
+        
+        GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() {
+
+            public void onUncaughtException(@Nonnull final Throwable throwable) {
+                ErrorDialog errorDialog = injector.getErrorDialog();
+                errorDialog.setException(throwable);
+                errorDialog.center();
+            }
+        });
+        
+        injector.getDispatcher().start();
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/LogBrowser.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/LogBrowser.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Module.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Module.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Module.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Module.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,100 @@
+/**
+ * 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.cxf.management.web.browser.client;
+
+import com.google.gwt.inject.client.AbstractGinModule;
+import com.google.inject.name.Names;
+
+import org.apache.cxf.management.web.browser.client.service.settings.IdentifierGenerator;
+import org.apache.cxf.management.web.browser.client.service.settings.IdentifierGeneratorImpl;
+import org.apache.cxf.management.web.browser.client.service.settings.LocalStorage;
+import org.apache.cxf.management.web.browser.client.service.settings.LocalStorageImpl;
+import org.apache.cxf.management.web.browser.client.service.settings.RemoteStorageProxy;
+import org.apache.cxf.management.web.browser.client.service.settings.RemoteStorageProxyImpl;
+import org.apache.cxf.management.web.browser.client.ui.BindStrategy;
+import org.apache.cxf.management.web.browser.client.ui.DialogBindStrategyImpl;
+import org.apache.cxf.management.web.browser.client.ui.WidgetBindStrategyImpl;
+import org.apache.cxf.management.web.browser.client.ui.accesscontroler.AccessControlView;
+import org.apache.cxf.management.web.browser.client.ui.accesscontroler.AccessControlViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.browser.BrowseView;
+import org.apache.cxf.management.web.browser.client.ui.browser.BrowseViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.browser.EditCriteriaView;
+import org.apache.cxf.management.web.browser.client.ui.browser.EditCriteriaViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.browser.NavigationSidebarView;
+import org.apache.cxf.management.web.browser.client.ui.browser.NavigationSidebarViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.browser.ViewerView;
+import org.apache.cxf.management.web.browser.client.ui.browser.ViewerViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.common.NavigationHeaderView;
+import org.apache.cxf.management.web.browser.client.ui.common.NavigationHeaderViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.settings.SettingsView;
+import org.apache.cxf.management.web.browser.client.ui.settings.SettingsViewImpl;
+import org.apache.cxf.management.web.browser.client.ui.settings.SubscriptionDialog;
+import org.apache.cxf.management.web.browser.client.ui.settings.SubscriptionDialogImpl;
+
+public class Module extends AbstractGinModule {
+
+    @Override
+    protected void configure() {
+        bind(EventBus.class).to(DefaultEventBus.class);
+        bind(IdentifierGenerator.class).to(IdentifierGeneratorImpl.class);
+        bind(AccessControlView.class).to(AccessControlViewImpl.class);
+        bind(SettingsView.class).to(SettingsViewImpl.class);
+        bind(SubscriptionDialog.class).to(SubscriptionDialogImpl.class);
+        bind(BrowseView.class).to(BrowseViewImpl.class);
+        bind(NavigationHeaderView.class).to(NavigationHeaderViewImpl.class);
+        bind(NavigationSidebarView.class).to(NavigationSidebarViewImpl.class);
+        bind(EditCriteriaView.class).to(EditCriteriaViewImpl.class);
+        bind(ViewerView.class).to(ViewerViewImpl.class);
+        bind(RemoteStorageProxy.class).to(RemoteStorageProxyImpl.class);
+        bind(LocalStorage.class).to(LocalStorageImpl.class);
+
+        //TODO move it to view class:
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForAccessControl"))
+                .to(WidgetBindStrategyImpl.class);
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForBrowser"))
+                .to(WidgetBindStrategyImpl.class);
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForNavigationHeader"))
+                .to(WidgetBindStrategyImpl.class);
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForEditCriteria"))
+                .to(DialogBindStrategyImpl.class);        
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForNavigationSidebar"))
+                .to(WidgetBindStrategyImpl.class);
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForSettings"))
+                .to(WidgetBindStrategyImpl.class);
+
+        bind(BindStrategy.class)
+                .annotatedWith(Names.named("BindStrategyForViewer"))
+                .to(WidgetBindStrategyImpl.class);
+        
+    }
+
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Module.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/Module.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEvent.java Fri Feb  4 17:34:24 2011
@@ -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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class ChangedSubscriptionsEvent extends GwtEvent<ChangedSubscriptionsEventHandler> {
+    public static final Type<ChangedSubscriptionsEventHandler> TYPE =
+        new Type<ChangedSubscriptionsEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<ChangedSubscriptionsEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final ChangedSubscriptionsEventHandler handler) {
+        handler.onChangedSubscriptions(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface ChangedSubscriptionsEventHandler extends EventHandler {
+    void onChangedSubscriptions(ChangedSubscriptionsEvent event);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/ChangedSubscriptionsEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEvent.java Fri Feb  4 17:34:24 2011
@@ -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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class GoToAccessControlerEvent extends GwtEvent<GoToAccessControlerEventHandler> {
+    public static final Type<GoToAccessControlerEventHandler> TYPE =
+        new Type<GoToAccessControlerEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<GoToAccessControlerEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final GoToAccessControlerEventHandler handler) {
+        handler.onGoToAccessControler(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface GoToAccessControlerEventHandler extends EventHandler {
+    void onGoToAccessControler(GoToAccessControlerEvent event);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToAccessControlerEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEvent.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,39 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class GoToBrowserEvent extends GwtEvent<GoToBrowserEventHandler> {
+    public static final Type<GoToBrowserEventHandler> TYPE = new Type<GoToBrowserEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<GoToBrowserEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final GoToBrowserEventHandler handler) {
+        handler.onGoToBrowser(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface GoToBrowserEventHandler extends EventHandler {
+    void onGoToBrowser(GoToBrowserEvent event);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToBrowserEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEvent.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,39 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class GoToEditCriteriaEvent extends GwtEvent<GoToEditCriteriaEventHandler> {
+    public static final Type<GoToEditCriteriaEventHandler> TYPE = new Type<GoToEditCriteriaEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<GoToEditCriteriaEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final GoToEditCriteriaEventHandler handler) {
+        handler.onGoToEditCriteria(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface GoToEditCriteriaEventHandler extends EventHandler {
+    void onGoToEditCriteria(GoToEditCriteriaEvent event);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToEditCriteriaEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEvent.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,39 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class GoToSettingsEvent extends GwtEvent<GoToSettingsEventHandler> {
+    public static final Type<GoToSettingsEventHandler> TYPE = new Type<GoToSettingsEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<GoToSettingsEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final GoToSettingsEventHandler handler) {
+        handler.onGoToSettings(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface GoToSettingsEventHandler extends EventHandler {
+    void onGoToSettings(GoToSettingsEvent event);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/GoToSettingsEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEvent.java Fri Feb  4 17:34:24 2011
@@ -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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class RemoteStorageAccessDeniedEvent extends GwtEvent<RemoteStorageAccessDeniedEventHandler> {
+    public static final Type<RemoteStorageAccessDeniedEventHandler> TYPE =
+        new Type<RemoteStorageAccessDeniedEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<RemoteStorageAccessDeniedEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final RemoteStorageAccessDeniedEventHandler handler) {
+        handler.onRemoteStorageAccessDenied(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface RemoteStorageAccessDeniedEventHandler extends EventHandler {
+    void onRemoteStorageAccessDenied(RemoteStorageAccessDeniedEvent event);
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/RemoteStorageAccessDeniedEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEvent.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,50 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class SelectedSubscriptionEvent extends GwtEvent<SelectedSubscriptionEventHandler> {
+    public static final Type<SelectedSubscriptionEventHandler> TYPE =
+        new Type<SelectedSubscriptionEventHandler>();
+
+    private final String url;
+
+    public SelectedSubscriptionEvent(String url) {
+        this.url = url;
+    }
+
+    @Override
+    @Nonnull
+    public Type<SelectedSubscriptionEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final SelectedSubscriptionEventHandler handler) {
+        handler.onSelectedSubscription(this);
+    }
+
+    public String getUrl() {
+        return url;
+    }
+}
\ No newline at end of file

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEventHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEventHandler.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEventHandler.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEventHandler.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,26 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface SelectedSubscriptionEventHandler extends EventHandler {
+    void onSelectedSubscription(SelectedSubscriptionEvent event);
+}
\ No newline at end of file

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEventHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SelectedSubscriptionEventHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SignOutEvent.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SignOutEvent.java?rev=1067233&view=auto
==============================================================================
--- cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SignOutEvent.java (added)
+++ cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SignOutEvent.java Fri Feb  4 17:34:24 2011
@@ -0,0 +1,39 @@
+/**
+ * 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.cxf.management.web.browser.client.event;
+
+import javax.annotation.Nonnull;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class SignOutEvent extends GwtEvent<SignOutEventHandler> {
+    public static final Type<SignOutEventHandler> TYPE = new Type<SignOutEventHandler>();
+
+    @Override
+    @Nonnull
+    public Type<SignOutEventHandler> getAssociatedType() {
+        return TYPE;
+    }
+
+    @Override
+    protected void dispatch(@Nonnull final SignOutEventHandler handler) {
+        handler.onSignOut(this);
+    }
+}

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SignOutEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/management-web/src/main/java/org/apache/cxf/management/web/browser/client/event/SignOutEvent.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date