diff --git a/pom.xml b/pom.xml
index 06e38be..078a907 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
connector-grouper-rest
- 0.7
+ 1.0.1
jar
Grouper REST Connector
@@ -83,22 +83,22 @@
connector-rest
com.evolveum.polygon
- 1.4.2.14-SNAPSHOT
+ 1.5.0.0
org.apache.httpcomponents
httpclient
- 4.5.1
+ 4.5.13
org.json
json
- 20160810
+ 20190722
org.testng
testng
- 6.8
+ 7.4.0
test
diff --git a/src/main/assembly/connector.xml b/src/main/assembly/connector.xml
index 6d149b4..ad2b63f 100644
--- a/src/main/assembly/connector.xml
+++ b/src/main/assembly/connector.xml
@@ -14,10 +14,10 @@
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
-
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3
+ http://maven.apache.org/xsd/assembly-1.1.3.xsd">
connector
diff --git a/src/main/java/com/evolveum/polygon/connector/grouper/rest/GroupProcessor.java b/src/main/java/com/evolveum/polygon/connector/grouper/rest/GroupProcessor.java
index cbd144a..b4c74c8 100644
--- a/src/main/java/com/evolveum/polygon/connector/grouper/rest/GroupProcessor.java
+++ b/src/main/java/com/evolveum/polygon/connector/grouper/rest/GroupProcessor.java
@@ -25,20 +25,22 @@
import org.json.JSONObject;
import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
+import java.util.*;
/**
* Contains logic for handling operations on Group object class.
*/
public class GroupProcessor extends Processor {
- public static final String OBJECT_CLASS_NAME = "Group";
+ public static final String GROUP_OBJECT_CLASS_NAME = "Group";
+ public static final String STEM_OBJECT_CLASS_NAME = "Stem";
public static final String ATTR_NAME = "name";
public static final String ATTR_UUID = "uuid";
private static final String ATTR_EXTENSION = J_EXTENSION;
+ private static final String ATTR_ATTRIBUTES_JSON = "attributesJSON";
+ private static final String ATTR_DESCRIPTION = "description";
public static final String ATTR_MEMBER = "member";
+ public static final String ATTR_ATTRIBUTES = "attributes";
private static final String DEFAULT_BASE_STEM = ":";
@@ -46,33 +48,62 @@ public class GroupProcessor extends Processor {
super(configuration);
}
- ObjectClass getObjectClass() {
- return new ObjectClass(OBJECT_CLASS_NAME);
+ ObjectClass getGroupObjectClass()
+ {
+ return new ObjectClass(GROUP_OBJECT_CLASS_NAME);
}
- void read(Filter filter, ResultsHandler handler, OperationOptions options) {
- if (filter == null) {
+ ObjectClass getStemObjectClass()
+ {
+ return new ObjectClass(STEM_OBJECT_CLASS_NAME);
+ }
+
+ /**
+ * Create a request to get a list of groups from Grouper
+ * @param filter The filter that determines the query. We only recognize an EqualsFilter
+ * @param handler A result handler to take the data
+ * @param options Options to process.
+ */
+ void getGroups(Filter filter, ResultsHandler handler, OperationOptions options)
+ {
+ if (filter == null)
+ {
getAllGroups(handler, options);
- } else if (filter instanceof EqualsFilter) {
+ }
+ else if (filter instanceof EqualsFilter)
+ {
Attribute attribute = ((EqualsFilter) filter).getAttribute();
- if (attribute != null) {
+ if (attribute != null)
+ {
List