1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.core.provisioning.java.pushpull;
20
21 import org.apache.commons.lang3.ObjectUtils;
22 import org.apache.syncope.common.lib.to.Provision;
23 import org.apache.syncope.common.lib.types.AnyTypeKind;
24 import org.apache.syncope.core.provisioning.api.ProvisionSorter;
25
26 public class DefaultProvisionSorter implements ProvisionSorter {
27
28 @Override
29 public int compare(final Provision provision1, final Provision provision2) {
30 if (AnyTypeKind.USER.name().equals(provision1.getAnyType())) {
31 return -1;
32 }
33 if (AnyTypeKind.USER.name().equals(provision2.getAnyType())) {
34 return 1;
35 }
36 if (AnyTypeKind.GROUP.name().equals(provision1.getAnyType())) {
37 return -1;
38 }
39 if (AnyTypeKind.GROUP.name().equals(provision2.getAnyType())) {
40 return 1;
41 }
42 return ObjectUtils.compare(provision1.getAnyType(), provision2.getAnyType());
43 }
44 }