SLING-9668 Make clamd service a content analyzer

make operation and provider configurable
diff --git a/src/main/java/org/apache/sling/commons/clam/internal/ClamdService.java b/src/main/java/org/apache/sling/commons/clam/internal/ClamdService.java
index 80da576..9753126 100644
--- a/src/main/java/org/apache/sling/commons/clam/internal/ClamdService.java
+++ b/src/main/java/org/apache/sling/commons/clam/internal/ClamdService.java
@@ -49,10 +49,7 @@
 @Component(
     property = {
         Constants.SERVICE_DESCRIPTION + "=Sling Commons Clamd Service",
-        Constants.SERVICE_VENDOR + "=The Apache Software Foundation",
-        "operation=malware detection",
-        "provider=clam",
-        "provider=clamd",
+        Constants.SERVICE_VENDOR + "=The Apache Software Foundation"
     }
 )
 @Designate(
diff --git a/src/main/java/org/apache/sling/commons/clam/internal/ClamdServiceConfiguration.java b/src/main/java/org/apache/sling/commons/clam/internal/ClamdServiceConfiguration.java
index c6d8b19..99a62a0 100644
--- a/src/main/java/org/apache/sling/commons/clam/internal/ClamdServiceConfiguration.java
+++ b/src/main/java/org/apache/sling/commons/clam/internal/ClamdServiceConfiguration.java
@@ -52,4 +52,16 @@
     )
     int chunk_length() default 2048;
 
+    @AttributeDefinition(
+        name = "content analyzer operation",
+        description = "operation(s) this analyzer performs"
+    )
+    String[] content_analyzer_operation() default {"malware detection"};
+
+    @AttributeDefinition(
+        name = "content analyzer provider",
+        description = "provider which performs the operation(s)"
+    )
+    String[] content_analyzer_provider() default {"clam", "clamd"};
+
 }
diff --git a/src/test/java/org/apache/sling/commons/clam/it/tests/ClamdServiceIT.java b/src/test/java/org/apache/sling/commons/clam/it/tests/ClamdServiceIT.java
index e17b5a1..d3204ed 100644
--- a/src/test/java/org/apache/sling/commons/clam/it/tests/ClamdServiceIT.java
+++ b/src/test/java/org/apache/sling/commons/clam/it/tests/ClamdServiceIT.java
@@ -53,7 +53,7 @@
     private ClamService clamService;
 
     @Inject
-    @Filter(value = "(&(operation=malware detection)(provider=clamd))")
+    @Filter(value = "(&(content.analyzer.operation=malware detection)(content.analyzer.provider=clamd))")
     private ContentAnalyzer contentAnalyzer;
 
     private static final String INSTREAM_SIZE_LIMIT_EXCEEDED_ERROR_MESSAGE = "INSTREAM size limit exceeded. ERROR";