Author: orudyy
Date: Sat Sep 14 11:28:28 2013
New Revision: 1523220

URL: http://svn.apache.org/r1523220
Log:
QPID-5138: Add UI into web management console for creation and editing 
preferences providers

Added:
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addPreferencesProvider.html
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/add.html
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/show.html
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPreferencesProvider.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/add.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/show.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showPreferencesProvider.html
Modified:
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/controller.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/treeView.js
    
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showAuthProvider.html

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addPreferencesProvider.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addPreferencesProvider.html?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addPreferencesProvider.html
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addPreferencesProvider.html
 Sat Sep 14 11:28:28 2013
@@ -0,0 +1,47 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~ http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<div class="dijitHidden">
+    <div data-dojo-type="dijit.Dialog" data-dojo-props="title:'Preferences 
Provider'" id="addPreferencesProvider">
+        <form id="formAddPreferencesProvider" method="post" 
data-dojo-type="dijit.form.Form">
+            <input type="hidden" id="preferencesProvider.id" name="id"/>
+            <div style="height:100px; width:420px; overflow: auto">
+                <table class="tableContainer-table tableContainer-table-horiz" 
width="100%" cellspacing="1">
+                <tr>
+                    <td class="tableContainer-labelCell" style="width: 
200px;"><strong>Type*:</strong></td>
+                    <td class="tableContainer-valueCell"><div 
id="addPreferencesProvider.selectPreferencesProviderDiv"></div></td>
+                </tr>
+                <tr>
+                    <td class="tableContainer-labelCell" style="width: 
200px;"><strong>Name*:</strong></td>
+                    <td class="tableContainer-valueCell"><input type="text" 
name="name"
+                        id="preferencesProvider.name" 
data-dojo-type="dijit.form.ValidationTextBox"
+                        data-dojo-props="placeHolder: 'Name',
+                                    required: true,
+                                    missingMessage: 'A name must be supplied',
+                                    title: 'Enter name',
+                                    pattern: '^[\x20-\x2e\x30-\x7F]{1,255}$'" 
/></td>
+                </tr>
+                </table>
+                <div id="preferencesProvider.fieldsContainer"></div>
+            </div>
+            <div class="dijitDialogPaneActionBar">
+                <!-- submit buttons -->
+                <input type="submit" value="Save Preferences Provider" 
data-dojo-props="label: 'Save Preferences Provider'" 
data-dojo-type="dijit.form.Button" />
+                <input type="button" value="Cancel" data-dojo-props="label: 
'Cancel'" data-dojo-type="dijit.form.Button" 
id="addPreferencesProvider.cancelButton"/>
+            </div>
+        </form>
+    </div>
+</div>

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/add.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/add.html?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/add.html
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/add.html
 Sat Sep 14 11:28:28 2013
@@ -0,0 +1,29 @@
+<!--
+  ~ 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.
+  -->
+<table class="tableContainer-table tableContainer-table-horiz" 
style="margin:0; width:100%" cellspacing="1">
+  <tr>
+      <td class="tableContainer-labelCell" style="width: 
200px;"><strong>Path*: </strong></td>
+      <td class="tableContainer-valueCell" >
+        <input type="text" name="path"
+                        id="preferencesProvider.path"
+                        data-dojo-type="dijit.form.ValidationTextBox"
+                        data-dojo-props="placeHolder: 'Path/to/file',
+                                    required: true,
+                                    missingMessage: 'A path must be supplied',
+                                    title: 'Enter path'"/></td>
+  </tr>
+</table>

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/show.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/show.html?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/show.html
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/authenticationprovider/preferences/filesystempreferences/show.html
 Sat Sep 14 11:28:28 2013
@@ -0,0 +1,21 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~ http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<div style="clear:both">
+  <div class="formLabel-labelCell" style="float:left; width: 
100px;">Path:</div>
+  <div class="fileSystemPreferencesProviderPath" style="float:left;"></div>
+</div>
\ No newline at end of file

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js?rev=1523220&r1=1523219&r2=1523220&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js
 Sat Sep 14 11:28:28 2013
@@ -32,10 +32,13 @@ define(["dojo/_base/xhr",
         "dijit/registry",
         "dojo/dom-style",
         "dojox/html/entities",
-        "dojox/grid/enhanced/plugins/Pagination",
-        "dojox/grid/enhanced/plugins/IndirectSelection",
+        "dojo/dom",
+        "qpid/management/addPreferencesProvider",
+        "qpid/management/PreferencesProvider",
+        
"qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager",
         "dojo/domReady!"],
-       function (xhr, parser, query, connect, properties, updater, util, 
UpdatableStore, EnhancedGrid, addAuthenticationProvider, event, registry, 
domStyle, entities) {
+       function (xhr, parser, query, connect, properties, updater, util, 
UpdatableStore, EnhancedGrid,
+           addAuthenticationProvider, event, registry, domStyle, entities, 
dom, addPreferencesProvider, PreferencesProvider, 
PrincipalDatabaseAuthenticationManager) {
 
            function AuthenticationProvider(name, parent, controller) {
                this.name = name;
@@ -48,7 +51,7 @@ define(["dojo/_base/xhr",
            }
 
            AuthenticationProvider.prototype.getTitle = function() {
-               return "AuthenticationProvider";
+               return "AuthenticationProvider:" + this.name;
            };
 
            AuthenticationProvider.prototype.open = function(contentPane) {
@@ -62,8 +65,6 @@ define(["dojo/_base/xhr",
 
                             that.authProviderUpdater = new 
AuthProviderUpdater(contentPane.containerNode, that.modelObj, that.controller, 
that);
 
-                            updater.add( that.authProviderUpdater );
-
                             that.authProviderUpdater.update();
 
                             var editButton = 
query(".editAuthenticationProviderButton", contentPane.containerNode)[0];
@@ -81,6 +82,16 @@ define(["dojo/_base/xhr",
                                                 event.stop(evt);
                                                 
that.deleteAuthenticationProvider();
                                             });
+
+                            var addPreferencesProviderButton = 
query(".addPreferencesProviderButton", contentPane.containerNode)[0];
+                            var addPreferencesProviderWidget = 
registry.byNode(addPreferencesProviderButton);
+                            connect.connect(addPreferencesProviderWidget, 
"onClick",
+                                            function(evt){
+                                                event.stop(evt);
+                                                that.addPreferencesProvider();
+                                            });
+
+                            updater.add( that.authProviderUpdater );
                         }});
            };
 
@@ -111,6 +122,14 @@ define(["dojo/_base/xhr",
                }
            };
 
+           AuthenticationProvider.prototype.addPreferencesProvider = 
function() {
+             if (this.authProviderUpdater && 
this.authProviderUpdater.authProviderData
+                   && 
(!this.authProviderUpdater.authProviderData.preferencesproviders
+                       || 
!this.authProviderUpdater.authProviderData.preferencesproviders[0])){
+               addPreferencesProvider.show(this.name);
+             }
+           };
+
            function AuthProviderUpdater(node, authProviderObj, controller, 
authenticationProvider)
            {
                this.controller = controller;
@@ -118,6 +137,13 @@ define(["dojo/_base/xhr",
                this.type = query(".type", node)[0];
                this.state = query(".state", node)[0];
                this.authenticationProvider = authenticationProvider;
+               
this.preferencesProviderType=dom.byId("preferencesProviderType");
+               
this.preferencesProviderName=dom.byId("preferencesProviderName");
+               
this.preferencesProviderState=dom.byId("preferencesProviderState");
+               this.addPreferencesProviderButton = 
query(".addPreferencesProviderButton", node)[0];
+               this.editPreferencesProviderButton = 
query(".editPreferencesProviderButton", node)[0];
+               this.deletePreferencesProviderButton = 
query(".deletePreferencesProviderButton", node)[0];
+               this.preferencesProviderAttributes = 
dom.byId("preferencesProviderAttributes")
 
                this.query = "rest/authenticationprovider/" + 
encodeURIComponent(authProviderObj.name);
 
@@ -139,16 +165,38 @@ define(["dojo/_base/xhr",
 
                              if 
(util.isProviderManagingUsers(that.authProviderData.type))
                              {
-                                 
require(["qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager"],
-                                     
function(PrincipalDatabaseAuthenticationManager) {
-                                     that.details = new 
PrincipalDatabaseAuthenticationManager(node, data[0], controller, that);
-                                     that.details.update();
-                                 });
+                                     that.details = new 
PrincipalDatabaseAuthenticationManager(node, that.authProviderData, controller);
+                                     
that.details.update(that.authProviderData);
                              }
+                             var preferencesProviderData = 
that.authProviderData.preferencesproviders? 
that.authProviderData.preferencesproviders[0]: null;
+                             that.preferencesNode = 
query(".preferencesProviderDetails", node)[0];
+                             
that.updatePreferencesProvider(preferencesProviderData);
                          });
 
            }
 
+           AuthProviderUpdater.prototype.updatePreferencesProvider = 
function(preferencesProviderData)
+           {
+             if (preferencesProviderData)
+             {
+               this.addPreferencesProviderButton.style.display = 'none';
+               if (!this.preferencesProvider)
+               {
+                 this.preferencesProvider=new 
PreferencesProvider(preferencesProviderData.name, this.authProviderData);
+                 this.preferencesProvider.init(this.preferencesNode);
+               }
+               this.preferencesProvider.update(preferencesProviderData);
+             }
+             else
+             {
+               if (this.preferencesProvider)
+               {
+                 this.preferencesProvider.update(null);
+               }
+               this.addPreferencesProviderButton.style.display = 'inline';
+             }
+           };
+
            AuthProviderUpdater.prototype.updateHeader = function()
            {
                this.authenticationProvider.name = this.authProviderData[ 
"name" ]
@@ -159,8 +207,40 @@ define(["dojo/_base/xhr",
 
            AuthProviderUpdater.prototype.update = function()
            {
+             var that = this;
 
-               var that = this;
+             xhr.get({url: this.query, sync: properties.useSyncGet, handleAs: 
"json"})
+                 .then(function(data) {
+                     that.authProviderData = data[0];
+                     that.name = data[0].name
+                     util.flattenStatistics( that.authProviderData );
+                     that.updateHeader();
+                     if (that.details)
+                     {
+                       try
+                       {
+                         that.details.update(that.authProviderData);
+                       }
+                       catch(e)
+                       {
+                         if (console)
+                         {
+                           console.error(e);
+                         }
+                       }
+                     }
+                     try
+                     {
+                       
that.updatePreferencesProvider(that.authProviderData.preferencesproviders? 
that.authProviderData.preferencesproviders[0]: null);
+                     }
+                     catch(e)
+                     {
+                       if (console)
+                         {
+                           console.error(e);
+                         }
+                     }
+                 });
 
 
            };

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js
 Sat Sep 14 11:28:28 2013
@@ -0,0 +1,179 @@
+/*
+ *
+ * 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.
+ *
+ */
+define(["dojo/_base/xhr",
+        "dojo/parser",
+        "dojo/query",
+        "dojo/_base/connect",
+        "qpid/common/properties",
+        "qpid/common/updater",
+        "qpid/common/util",
+        "dojo/_base/event",
+        "dijit/registry",
+        "dojo/dom-style",
+        "dojox/html/entities",
+        "qpid/management/addPreferencesProvider",
+        "dojo/domReady!"],
+       function (xhr, parser, query, connect, properties, updater, util, 
event, registry, domStyle, entities, addPreferencesProvider) {
+
+           function PreferencesProvider(name, parent, controller) {
+               this.name = name;
+               this.controller = controller;
+               this.modelObj = { type: "preferencesprovider", name: name };
+               this.authenticationProviderName = parent.name;
+               if(parent) {
+                    this.modelObj.parent = {};
+                    this.modelObj.parent[parent.type] = parent;
+               }
+           }
+
+           PreferencesProvider.prototype.getTitle = function() {
+               return "PreferencesProvider:" + this.authenticationProviderName 
+ "/" + this.name ;
+           };
+
+           PreferencesProvider.prototype.init = function(node) {
+             var that = this;
+             xhr.get({url: "showPreferencesProvider.html",
+               sync: true,
+               load:  function(data) {
+                   node.innerHTML = data;
+                   parser.parse(node);
+
+                   
that.preferencesProviderType=query(".preferencesProviderType", node)[0];
+                   
that.preferencesProviderName=query(".preferencesProviderName", node)[0];
+                   
that.preferencesProviderState=query(".preferencesProviderState", node)[0];
+                   that.editPreferencesProviderButton = 
query(".editPreferencesProviderButton", node)[0];
+                   that.deletePreferencesProviderButton = 
query(".deletePreferencesProviderButton", node)[0];
+                   that.preferencesProviderAttributes = 
query(".preferencesProviderAttributes", node)[0];
+                   that.preferencesDetailsDiv = query(".preferencesDetails", 
node)[0];
+                   var editPreferencesProviderWidget = 
registry.byNode(that.editPreferencesProviderButton);
+                   editPreferencesProviderWidget.on("click", function(evt){ 
event.stop(evt); that.editPreferencesProvider();});
+                   var deletePreferencesProviderWidget = 
registry.byNode(that.deletePreferencesProviderButton);
+                   deletePreferencesProviderWidget.on("click", function(evt){ 
event.stop(evt); that.deletePreferencesProvider();});
+               }});
+             this.reload();
+           };
+
+           PreferencesProvider.prototype.open = function(contentPane) {
+               this.contentPane = contentPane;
+               this.init(contentPane.containerNode);
+               this.updater = new PreferencesProviderUpdater(this);
+               updater.add(this.updater);
+           };
+
+           PreferencesProvider.prototype.close = function() {
+             if (this.updater)
+             {
+               updater.remove( this.updater);
+             }
+           };
+
+           PreferencesProvider.prototype.deletePreferencesProvider = 
function() {
+             if (this.preferencesProviderData){
+               var preferencesProviderData = this.preferencesProviderData;
+               if(confirm("Are you sure you want to delete preferences 
provider '" + preferencesProviderData.name + "'?")) {
+                 var query = "rest/preferencesprovider/" + 
encodeURIComponent(this.authenticationProviderName) + "/" + 
encodeURIComponent(preferencesProviderData.name);
+                 this.success = true
+                 var that = this;
+                 xhr.del({url: query, sync: true, handleAs: "json"}).then(
+                     function(data) {
+                       that.update(null);
+
+                       // if opened in tab
+                       if (that.contentPane)
+                       {
+                         that.close();
+                         that.contentPane.onClose()
+                         
that.controller.tabContainer.removeChild(that.contentPane);
+                         that.contentPane.destroyRecursive();
+                       }
+                     },
+                     function(error) {that.success = false; that.failureReason 
= error;});
+                 if(!this.success ) {
+                     alert("Error:" + this.failureReason);
+                 }
+               }
+             }
+           };
+
+           PreferencesProvider.prototype.editPreferencesProvider = function() {
+             if (this.preferencesProviderData){
+               addPreferencesProvider.show(this.authenticationProviderName, 
this.name);
+             }
+           };
+
+           PreferencesProvider.prototype.update = function(data) {
+             this.preferencesProviderData = data;
+             if (data)
+             {
+               this.name = data.name;
+               this.preferencesProviderAttributes.style.display = 'block';
+               this.editPreferencesProviderButton.style.display = 'inline';
+               this.deletePreferencesProviderButton.style.display = 'inline';
+               this.preferencesProviderType.innerHTML = 
entities.encode(String(data.type));
+               this.preferencesProviderName.innerHTML = 
entities.encode(String(data.name));
+               this.preferencesProviderState.innerHTML = 
entities.encode(String(data.state));
+               if (!this.details)
+               {
+                 var that = this;
+                 
require(["qpid/management/authenticationprovider/preferences/" + 
data.type.toLowerCase() + "/show"],
+                   function(PreferencesProviderDetails) {
+                     that.details = new 
PreferencesProviderDetails(that.preferencesDetailsDiv);
+                     that.details.update(data);
+                 });
+               }
+               else
+               {
+                 this.details.update(data);
+               }
+             }
+             else
+             {
+               this.editPreferencesProviderButton.style.display = 'none';
+               this.deletePreferencesProviderButton.style.display = 'none';
+               this.preferencesProviderAttributes.style.display = 'none';
+               this.details = null;
+             }
+           };
+
+           PreferencesProvider.prototype.reload = function()
+           {
+             var query = "rest/preferencesprovider/" + 
encodeURIComponent(this.authenticationProviderName) + "/" + 
encodeURIComponent(this.name);
+             var that = this;
+             xhr.get({url: query, sync: properties.useSyncGet, handleAs: 
"json"})
+                 .then(function(data) {
+                     var preferencesProviderData = data[0];
+                     util.flattenStatistics( preferencesProviderData );
+                     that.update(preferencesProviderData);
+                 });
+           };
+
+           function PreferencesProviderUpdater(preferencesProvider)
+           {
+               this.preferencesProvider = preferencesProvider;
+           };
+
+           PreferencesProviderUpdater.prototype.update = function()
+           {
+             this.preferencesProvider.reload();
+           };
+
+           return PreferencesProvider;
+       });

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js?rev=1523220&r1=1523219&r2=1523220&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js
 Sat Sep 14 11:28:28 2013
@@ -31,6 +31,7 @@ define(["dojo/_base/xhr",
         "dijit/form/FilteringSelect",
         "dojo/_base/connect",
         "dojo/dom-style",
+        "qpid/management/addPreferencesProvider",
         /* dojox/ validate resources */
         "dojox/validate/us", "dojox/validate/web",
         /* basic dijit classes */
@@ -44,7 +45,7 @@ define(["dojo/_base/xhr",
         "dojox/form/BusyButton", "dojox/form/CheckedMultiSelect",
         "dojox/layout/TableContainer",
         "dojo/domReady!"],
-    function (xhr, dom, construct, win, registry, parser, array, event, json, 
Memory, FilteringSelect, connect, domStyle) {
+    function (xhr, dom, construct, win, registry, parser, array, event, json, 
Memory, FilteringSelect, connect, domStyle, addPreferencesProvider) {
 
         var addAuthenticationProvider = {};
 
@@ -163,6 +164,10 @@ define(["dojo/_base/xhr",
                                     if(this.success === true)
                                     {
                                         
registry.byId("addAuthenticationProvider").hide();
+                                        if 
(dojo.byId("formAddAuthenticationProvider.id").value == "")
+                                        {
+                                          
addPreferencesProvider.show(newAuthenticationManager.name);
+                                        }
                                     }
                                     else
                                     {

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPreferencesProvider.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPreferencesProvider.js?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPreferencesProvider.js
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPreferencesProvider.js
 Sat Sep 14 11:28:28 2013
@@ -0,0 +1,196 @@
+/*
+ *
+ * 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.
+ *
+ */
+define(["dojo/_base/xhr",
+        "dojo/dom",
+        "dojo/dom-construct",
+        "dojo/query",
+        "dojo/_base/window",
+        "dijit/registry",
+        "dojo/parser",
+        "dojo/_base/array",
+        "dojo/_base/event",
+        'dojo/_base/json',
+        "dojo/store/Memory",
+        "dijit/form/FilteringSelect",
+        "dojo/_base/connect",
+        "dojo/dom-style",
+        "dojo/string",
+        "dojox/validate/us",
+        "dojox/validate/web",
+        "dijit/Dialog",
+        "dijit/form/CheckBox",
+        "dijit/form/Textarea",
+        "dijit/form/TextBox",
+        "dijit/form/ValidationTextBox",
+        "dijit/form/Button",
+        "dijit/form/Form",
+        "dojox/form/BusyButton",
+        "dojox/form/CheckedMultiSelect",
+        "dojox/layout/TableContainer",
+        "dojo/domReady!"],
+    function (xhr, dom, construct, query, win, registry, parser, array, event, 
json, Memory, FilteringSelect, connect, domStyle, string) {
+
+        var addPreferencesProvider = {};
+
+        var node = construct.create("div", null, win.body(), "last");
+
+        var convertToPreferencesProvider = function 
convertToPreferencesProvider(formValues)
+        {
+            var newProvider = {};
+
+            newProvider.name = dijit.byId("preferencesProvider.name").value;
+            newProvider.type = dijit.byId("preferencesProvider.type").value;
+            var id = dojo.byId("preferencesProvider.id").value;
+            if (id)
+            {
+                newProvider.id = id;
+            }
+            for(var propName in formValues)
+            {
+                if(formValues.hasOwnProperty(propName))
+                {
+                    if(formValues[ propName ] !== "") {
+                        newProvider[ propName ] = formValues[propName];
+                    }
+
+                }
+            }
+            return newProvider;
+        }
+
+        var selectPreferencesProviderType = function(type) {
+            if(type && string.trim(type) != "")
+            {
+                require(["qpid/management/authenticationprovider/preferences/" 
+ type.toLowerCase() + "/add"],
+                function(addType)
+                {
+                  
addType.show(dom.byId("preferencesProvider.fieldsContainer"), 
addPreferencesProvider.data)
+                });
+            }
+        }
+
+        xhr.get({url: "addPreferencesProvider.html",
+                 sync: true,
+                 load:  function(data) {
+                            node.innerHTML = data;
+                            addPreferencesProvider.dialogNode = 
dom.byId("addPreferencesProvider");
+                            
parser.instantiate([addPreferencesProvider.dialogNode]);
+
+                            var cancelButton = 
registry.byId("addPreferencesProvider.cancelButton");
+                            cancelButton.on("click", function(){
+                              registry.byId("addPreferencesProvider").hide();
+                            });
+                            var theForm = 
registry.byId("formAddPreferencesProvider");
+                            theForm.on("submit", function(e) {
+
+                                event.stop(e);
+                                if(theForm.validate()){
+                                    var newProvider = 
convertToPreferencesProvider(theForm.getValues());
+                                    var that = this;
+                                    var nameWidget = 
registry.byId("preferencesProvider.name")
+                                    xhr.put({url: "rest/preferencesprovider/" 
+encodeURIComponent(addPreferencesProvider.authenticationProviderName) + "/" + 
encodeURIComponent(nameWidget.value),
+                                             sync: true, handleAs: "json",
+                                             headers: { "Content-Type": 
"application/json"},
+                                             putData: json.toJson(newProvider),
+                                             load: function(x) {that.success = 
true; },
+                                             error: function(error) 
{that.success = false; that.failureReason = error;}});
+                                    if(this.success === true)
+                                    {
+                                        
registry.byId("addPreferencesProvider").hide();
+                                    }
+                                    else
+                                    {
+                                        alert("Error:" + this.failureReason);
+                                    }
+                                    return false;
+                                }else{
+                                    alert('Form contains invalid data.  Please 
correct first');
+                                    return false;
+                                }
+                            });
+                            xhr.get({
+                                sync: true,
+                                url: 
"rest/helper?action=ListPreferencesProvidersTypes",
+                                handleAs: "json"
+                            }).then(
+                                function(data) {
+                                    var preferencesProvidersTypes =  data;
+                                    var storeData = [];
+                                    for (var i =0 ; i < 
preferencesProvidersTypes.length; i++)
+                                    {
+                                        storeData[i]= {id: 
preferencesProvidersTypes[i], name: preferencesProvidersTypes[i]};
+                                    }
+                                    var store = new Memory({ data: storeData 
});
+                                    var preferencesProviderTypesDiv = 
dom.byId("addPreferencesProvider.selectPreferencesProviderDiv");
+                                    var input = construct.create("input", {id: 
"preferencesProviderType", required: true}, preferencesProviderTypesDiv);
+                                    
addPreferencesProvider.preferencesProviderTypeChooser = new FilteringSelect({ 
id: "preferencesProvider.type",
+                                                                              
name: "type",
+                                                                              
store: store,
+                                                                              
searchAttr: "name",
+                                                                              
required: true,
+                                                                              
onChange: selectPreferencesProviderType }, input);
+                                    
addPreferencesProvider.preferencesProviderTypeChooser.startup();
+                            });
+                        }});
+
+        addPreferencesProvider.show = function(authenticationProviderName, 
providerName) {
+            this.authenticationProviderName = authenticationProviderName;
+            this.data = null;
+            var that = this;
+            var theForm = registry.byId("formAddPreferencesProvider");
+            theForm.reset();
+            dojo.byId("preferencesProvider.id").value="";
+            var nameWidget = registry.byId("preferencesProvider.name");
+            nameWidget.set("disabled", false);
+            registry.byId("preferencesProvider.type").set("disabled", false);
+            if (this.preferencesProviderTypeChooser)
+            {
+                this.preferencesProviderTypeChooser.set("disabled", false);
+                this.preferencesProviderTypeChooser.set("value", null);
+            }
+            var dialog = registry.byId("addPreferencesProvider");
+            if (providerName)
+            {
+                xhr.get({
+                    url: "rest/preferencesprovider/"  
+encodeURIComponent(authenticationProviderName) + "/" + 
encodeURIComponent(providerName),
+                    sync: false,
+                    handleAs: "json"
+                }).then(
+                   function(data) {
+                       var provider = data[0];
+                       var providerType = provider.type;
+                       that.data = provider;
+                       nameWidget.set("value", provider.name);
+                       nameWidget.set("disabled", true);
+                       that.preferencesProviderTypeChooser.set("value", 
providerType);
+                       that.preferencesProviderTypeChooser.set("disabled", 
true);
+                       dojo.byId("preferencesProvider.id").value=provider.id;
+                       dialog.show();
+               });
+            }
+            else
+            {
+              dialog.show();
+            }
+        }
+
+        return addPreferencesProvider;
+    });
\ No newline at end of file

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js?rev=1523220&r1=1523219&r2=1523220&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js
 Sat Sep 14 11:28:28 2013
@@ -30,7 +30,6 @@ define(["dojo/_base/xhr",
         "dijit/registry",
         "qpid/common/util",
         "qpid/common/properties",
-        "qpid/common/updater",
         "qpid/common/UpdatableStore",
         "dojox/grid/EnhancedGrid",
         "dojox/grid/enhanced/plugins/Pagination",
@@ -43,8 +42,8 @@ define(["dojo/_base/xhr",
         "dijit/form/Form",
         "dijit/form/DateTextBox",
         "dojo/domReady!"],
-    function (xhr, dom, parser, query, construct, connect, win, event, json, 
registry, util, properties, updater, UpdatableStore, EnhancedGrid) {
-        function DatabaseAuthManager(containerNode, authProviderObj, 
controller, authenticationManagerUpdater) {
+    function (xhr, dom, parser, query, construct, connect, win, event, json, 
registry, util, properties, UpdatableStore, EnhancedGrid) {
+        function DatabaseAuthManager(containerNode, authProviderObj, 
controller) {
             var node = construct.create("div", null, containerNode, "last");
             var that = this;
             this.name = authProviderObj.name;
@@ -53,14 +52,7 @@ define(["dojo/_base/xhr",
                                     load:  function(data) {
                                         node.innerHTML = data;
                                         parser.parse(node);
-
-
-                                        that.authDatabaseUpdater= new 
AuthProviderUpdater(node, authProviderObj, controller, 
authenticationManagerUpdater);
-                                        updater.add( that.authDatabaseUpdater);
-
-                                        that.authDatabaseUpdater.update();
-
-
+                                        that.init(node, authProviderObj, 
controller);
                                     }});
         }
 
@@ -72,19 +64,12 @@ define(["dojo/_base/xhr",
             updater.remove( this.authDatabaseUpdater );
         };
 
-        function AuthProviderUpdater(node, authProviderObj, controller, 
authenticationManagerUpdater)
+        DatabaseAuthManager.prototype.init = function(node, authProviderObj, 
controller)
         {
             this.controller = controller;
-            this.query = 
"rest/authenticationprovider?id="+encodeURIComponent(authProviderObj.id);
-            this.name = authProviderObj.name;
-            this.authenticationManagerUpdater = authenticationManagerUpdater;
             var that = this;
 
-            xhr.get({url: this.query, sync: properties.useSyncGet, handleAs: 
"json"})
-               .then(function(data) {
-                     that.authProviderData = data[0];
-                     that.name = data[0].name
-                     util.flattenStatistics( that.authProviderData );
+                     that.authProviderData = authProviderObj;
 
                      var userDiv = query(".users")[0];
 
@@ -131,10 +116,9 @@ define(["dojo/_base/xhr",
                                                                     
event.stop(evt);
                                                                     
that.deleteUsers();
                                                                 });
-                });
         }
 
-        AuthProviderUpdater.prototype.deleteUsers = function()
+        DatabaseAuthManager.prototype.deleteUsers = function()
         {
             var grid = this.usersGrid.grid;
             var data = grid.selection.getSelected();
@@ -168,24 +152,11 @@ define(["dojo/_base/xhr",
 }
         };
 
-        AuthProviderUpdater.prototype.update = function()
+        DatabaseAuthManager.prototype.update = function(data)
         {
-
-            var that = this;
-
-            xhr.get({url: this.query, sync: properties.useSyncGet, handleAs: 
"json"})
-                .then(function(data) {
-                    that.authProviderData = data[0];
-                    that.name = data[0].name
-                    util.flattenStatistics( that.authProviderData );
-
-                    that.usersGrid.update(that.authProviderData.users);
-
-                    that.authenticationManagerUpdater.authProviderData = 
data[0];
-                    that.authenticationManagerUpdater.updateHeader();
-                });
-
-
+            this.authProviderData = data;
+            this.name = data.name
+            this.usersGrid.update(this.authProviderData.users);
         };
 
         var addUser = {};

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/add.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/add.js?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/add.js
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/add.js
 Sat Sep 14 11:28:28 2013
@@ -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.
+ *
+ */
+define(["dojo/_base/xhr",
+        "dojo/dom",
+        "dojo/dom-construct",
+        "dojo/_base/window",
+        "dijit/registry",
+        "dojo/parser",
+        "dojo/_base/array",
+        "dojo/_base/event",
+        "dojo/_base/json",
+        "dojo/string",
+        
"dojo/text!../../../../../authenticationprovider/preferences/filesystempreferences/add.html",
+        "dojo/domReady!"],
+    function (xhr, dom, domConstruct, win, registry, parser, array, event, 
json, string, template) {
+        return {
+            show: function(node, data) {
+                dojo.forEach(dijit.findWidgets(node), function(w) {
+                    w.destroyRecursive();
+                });
+                node.innerHTML = template;
+                parser.parse(node);
+                var pathWidget = registry.byId("preferencesProvider.path")
+                if (data)
+                {
+                  pathWidget.set("value", data["path"]);
+                }
+            }
+        };
+    });

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/show.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/show.js?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/show.js
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/preferences/filesystempreferences/show.js
 Sat Sep 14 11:28:28 2013
@@ -0,0 +1,46 @@
+/*
+ *
+ * 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.
+ *
+ */
+define(["dojo/_base/xhr",
+        "dojo/parser",
+        "dojo/string",
+        "dojox/html/entities",
+        "dojo/query",
+        "dojo/domReady!"],
+    function (xhr, parser, json, entities, query) {
+
+  function FileSystemPreferences(containerNode) {
+    var that = this;
+    xhr.get({url: 
"authenticationprovider/preferences/filesystempreferences/show.html",
+      sync: true,
+      load:  function(template) {
+        containerNode.innerHTML = template;
+        parser.parse(containerNode);
+        
that.preferencesProviderPath=query(".fileSystemPreferencesProviderPath", 
containerNode)[0];
+      }});
+  }
+
+  FileSystemPreferences.prototype.update=function(data)
+  {
+    this.preferencesProviderPath.innerHTML = 
entities.encode(String(data["path"]));
+  };
+
+  return FileSystemPreferences;
+});

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/controller.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/controller.js?rev=1523220&r1=1523219&r2=1523220&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/controller.js
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/controller.js
 Sat Sep 14 11:28:28 2013
@@ -36,10 +36,11 @@ define(["dojo/dom",
         "qpid/management/Port",
         "qpid/management/Plugin",
         "qpid/management/logs/LogViewer",
+        "qpid/management/PreferencesProvider",
         "dojo/ready",
         "dojo/domReady!"],
        function (dom, registry, ContentPane, entities, Broker, VirtualHost, 
Exchange, Queue, Connection, AuthProvider,
-                 GroupProvider, Group, KeyStore, TrustStore, 
AccessControlProvider, Port, Plugin, LogViewer, ready) {
+                 GroupProvider, Group, KeyStore, TrustStore, 
AccessControlProvider, Port, Plugin, LogViewer, PreferencesProvider, ready) {
            var controller = {};
 
            var constructors = { broker: Broker, virtualhost: VirtualHost, 
exchange: Exchange,
@@ -47,7 +48,7 @@ define(["dojo/dom",
                                 authenticationprovider: AuthProvider, 
groupprovider: GroupProvider,
                                 group: Group, keystore: KeyStore, truststore: 
TrustStore,
                                 accesscontrolprovider: AccessControlProvider, 
port: Port,
-                                plugin: Plugin, logViewer: LogViewer};
+                                plugin: Plugin, logViewer: LogViewer, 
preferencesprovider: PreferencesProvider};
 
            var tabDiv = dom.byId("managedViews");
 

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/treeView.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/treeView.js?rev=1523220&r1=1523219&r2=1523220&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/treeView.js
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/treeView.js
 Sat Sep 14 11:28:28 2013
@@ -284,6 +284,8 @@ define(["dojo/_base/xhr",
                  controller.show("accesscontrolprovider", 
details.accesscontrolprovider, {broker: {type:"broker", name:""}});
                } else if (details.type == 'plugin') {
                  controller.show("plugin", details.plugin, {broker: 
{type:"broker", name:""}});
+               } else if (details.type == "preferencesprovider") {
+                 controller.show("preferencesprovider", 
details.preferencesprovider, { type: "authenticationprovider", name: 
details.authenticationprovider, parent: {broker: {type:"broker", name:""}}});
                }
            };
 

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showAuthProvider.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showAuthProvider.html?rev=1523220&r1=1523219&r2=1523220&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showAuthProvider.html
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showAuthProvider.html
 Sat Sep 14 11:28:28 2013
@@ -27,4 +27,11 @@
     <br/>
     <button data-dojo-type="dijit.form.Button" 
class="editAuthenticationProviderButton">Edit</button>
     <button data-dojo-type="dijit.form.Button" 
class="deleteAuthenticationProviderButton">Delete</button>
+    <br/>
+    <br/>
+    <div class="preferencesPanel" data-dojo-type="dijit.TitlePane" 
data-dojo-props="title: 'Preferences Provider',  open: true">
+      <div class="preferencesProviderDetails"></div>
+      <button data-dojo-type="dijit.form.Button" 
class="addPreferencesProviderButton">Add</button>
+    </div>
+    <br/>
 </div>
\ No newline at end of file

Added: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showPreferencesProvider.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showPreferencesProvider.html?rev=1523220&view=auto
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showPreferencesProvider.html
 (added)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showPreferencesProvider.html
 Sat Sep 14 11:28:28 2013
@@ -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.
+ -
+ -->
+ <div class="preferencesProvider">
+  <div class="preferencesProviderAttributes">
+     <div style="clear:both">
+        <div class="formLabel-labelCell" style="float:left; width: 
100px;">Type:</div>
+        <div class="preferencesProviderType" style="float:left;"></div>
+     </div>
+     <div style="clear:both">
+        <div class="formLabel-labelCell" style="float:left; width: 
100px;">Name:</div>
+        <div class="preferencesProviderName" style="float:left;"></div>
+     </div>
+     <div style="clear:both">
+        <div class="formLabel-labelCell" style="float:left; width: 
100px;">State:</div>
+        <div class="preferencesProviderState" style="float:left;"></div>
+     </div>
+     <div class="preferencesDetails"></div>
+  </div>
+  <br/>
+  <button data-dojo-type="dijit.form.Button" 
class="deletePreferencesProviderButton">Delete</button>
+  <button data-dojo-type="dijit.form.Button" 
class="editPreferencesProviderButton">Edit</button>
+</div>
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to