This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/felix-dev.git


The following commit(s) were added to refs/heads/master by this push:
     new f070d00  FELIX-6423 : Use property type password for password
f070d00 is described below

commit f070d006a87c9b01be661d80904d59fefd11bb87
Author: Carsten Ziegeler <[email protected]>
AuthorDate: Wed Jun 9 10:51:57 2021 +0200

    FELIX-6423 : Use property type password for password
---
 webconsole/changelog.txt                           |  2 ++
 webconsole/pom.xml                                 |  4 ++--
 .../servlet/ConfigurationMetatypeSupport.java      | 27 +++++++++++++++++++++-
 3 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/webconsole/changelog.txt b/webconsole/changelog.txt
index 9ccd352..1f3e783 100644
--- a/webconsole/changelog.txt
+++ b/webconsole/changelog.txt
@@ -1,5 +1,7 @@
 Changes in 4.6.2
 ----------------
+** Improvement
+    * [FELIX-6423] - Use property type password for password
 ** Bug
     * [FELIX-6375] - Configuration Admin Service not available with 
org.apache.felix.webconsole_4.6.0.all
     * [FELIX-6392] - Webconsole configadmin javascript error: Uncaught 
TypeError: parsers is undefined
diff --git a/webconsole/pom.xml b/webconsole/pom.xml
index c5738f0..1928195 100644
--- a/webconsole/pom.xml
+++ b/webconsole/pom.xml
@@ -131,10 +131,10 @@
                         <DynamicImport-Package>
                             
org.apache.felix.bundlerepository;version="[2.0,3)",
                             org.osgi.service.obr;version="[1.0,2)",
-                            org.osgi.service.cm;version="[1.2,2)",
+                            org.osgi.service.cm;version="[1.5,2)",
                             org.osgi.service.condpermadmin;version="[1.0,2)",
                             org.osgi.service.log;version="[1.3,2)",
-                            org.osgi.service.metatype;version="[1.1,2)",
+                            org.osgi.service.metatype;version="[1.4,2)",
                             org.osgi.service.permissionadmin;version="[1.2,2)",
                             org.osgi.service.prefs;version="[1.1,2)",
                             org.osgi.service.wireadmin;version="[1.0,2)"
diff --git 
a/webconsole/src/main/java/org/apache/felix/webconsole/internal/servlet/ConfigurationMetatypeSupport.java
 
b/webconsole/src/main/java/org/apache/felix/webconsole/internal/servlet/ConfigurationMetatypeSupport.java
index 4d0271b..1715601 100644
--- 
a/webconsole/src/main/java/org/apache/felix/webconsole/internal/servlet/ConfigurationMetatypeSupport.java
+++ 
b/webconsole/src/main/java/org/apache/felix/webconsole/internal/servlet/ConfigurationMetatypeSupport.java
@@ -40,7 +40,6 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
             OsgiManager.PROP_DEFAULT_RENDER, OsgiManager.DEFAULT_PAGE, //
             OsgiManager.PROP_REALM, OsgiManager.DEFAULT_REALM, //
             OsgiManager.PROP_USER_NAME, OsgiManager.DEFAULT_USER_NAME, //
-            OsgiManager.PROP_PASSWORD, OsgiManager.DEFAULT_PASSWORD, //
             OsgiManager.PROP_CATEGORY, OsgiManager.DEFAULT_CATEGORY, //
             OsgiManager.PROP_LOCALE, "", //$NON-NLS-1$
         };
@@ -58,6 +57,7 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
 
     //---------- MetaTypeProvider
 
+    @Override
     public String[] getLocales()
     {
         // there is no locale support here
@@ -65,6 +65,7 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
     }
 
 
+    @Override
     public ObjectClassDefinition getObjectClassDefinition( String id, String 
locale )
     {
         if ( !osgiManager.getConfigurationPid().equals( id ) )
@@ -101,6 +102,11 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
             adList.add( new AttributeDefinitionImpl( key, name, descr, 
defaultValue ) );
         }
 
+        // password is special
+        final String pwKey = OsgiManager.PROP_PASSWORD;
+        adList.add( new AttributeDefinitionImpl( pwKey, getString( rb, 
"metadata." + pwKey + ".name", pwKey ),
+                getString( rb, "metadata." + pwKey + ".description", pwKey ) ) 
);
+
         // log level is select - so no simple default value; requires 
localized option labels
         adList.add( new AttributeDefinitionImpl( OsgiManager.PROP_LOG_LEVEL, 
getString( rb,
             "metadata.loglevel.name", OsgiManager.PROP_LOG_LEVEL ), 
//$NON-NLS-1$
@@ -144,24 +150,28 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
                 .toArray( new AttributeDefinition[adList.size()] );
 
 
+            @Override
             public String getName()
             {
                 return getString( rb, "metadata.name", "Apache Felix OSGi 
Management Console" ); //$NON-NLS-1$ //$NON-NLS-2$
             }
 
 
+            @Override
             public InputStream getIcon( int arg0 )
             {
                 return null;
             }
 
 
+            @Override
             public String getID()
             {
                 return osgiManager.getConfigurationPid();
             }
 
 
+            @Override
             public String getDescription()
             {
                 return getString( rb,
@@ -169,6 +179,7 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
             }
 
 
+            @Override
             public AttributeDefinition[] getAttributeDefinitions( int filter )
             {
                 return ( filter == OPTIONAL ) ? null : attrs;
@@ -210,6 +221,11 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
         private final String[] optionValues;
 
 
+        AttributeDefinitionImpl( final String id, final String name, final 
String description )
+        {
+            this( id, name, description, PASSWORD, null, 0, null, null );
+        }
+
         AttributeDefinitionImpl( final String id, final String name, final 
String description, final String defaultValue )
         {
             this( id, name, description, STRING, new String[]
@@ -232,54 +248,63 @@ class ConfigurationMetatypeSupport extends 
ConfigurationSupport implements MetaT
         }
 
 
+        @Override
         public int getCardinality()
         {
             return cardinality;
         }
 
 
+        @Override
         public String[] getDefaultValue()
         {
             return defaultValues;
         }
 
 
+        @Override
         public String getDescription()
         {
             return description;
         }
 
 
+        @Override
         public String getID()
         {
             return id;
         }
 
 
+        @Override
         public String getName()
         {
             return name;
         }
 
 
+        @Override
         public String[] getOptionLabels()
         {
             return optionLabels;
         }
 
 
+        @Override
         public String[] getOptionValues()
         {
             return optionValues;
         }
 
 
+        @Override
         public int getType()
         {
             return type;
         }
 
 
+        @Override
         public String validate( String arg0 )
         {
             return null;

Reply via email to