You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2018/11/07 12:38:50 UTC
[syncope] branch master updated: [SYNCOPE-1392] Removal of
ReflectionToStringBuilder and reflection-based EqualsBuilder and
HashCodeBuilder from Common Lib and Console
This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git
The following commit(s) were added to refs/heads/master by this push:
new 1fd1ffd [SYNCOPE-1392] Removal of ReflectionToStringBuilder and reflection-based EqualsBuilder and HashCodeBuilder from Common Lib and Console
1fd1ffd is described below
commit 1fd1ffdfc1ada531ed190e404c7d883099169b71
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Wed Nov 7 13:32:30 2018 +0100
[SYNCOPE-1392] Removal of ReflectionToStringBuilder and reflection-based EqualsBuilder and HashCodeBuilder from Common Lib and Console
---
.../client/console/commons/status/StatusBean.java | 44 +++++++++++++---
.../client/console/panels/AbstractLogsPanel.java | 4 +-
.../client/console/panels/HistoryConfList.java | 4 +-
.../client/console/panels/TypesDirectoryPanel.java | 4 +-
.../client/console/panels/search/SearchClause.java | 41 ++++++++++++---
.../syncope/client/console/status/StatusModal.java | 4 +-
.../client/console/widgets/reconciliation/Any.java | 4 +-
.../console/widgets/reconciliation/Anys.java | 4 +-
.../console/widgets/reconciliation/Missing.java | 5 +-
.../reconciliation/ReconciliationReport.java | 4 +-
.../wizards/resources/AbstractConnConfPanel.java | 4 +-
.../syncope/common/lib/AbstractBaseBean.java | 55 --------------------
.../syncope/common/lib/info/JavaImplInfo.java | 5 +-
.../syncope/common/lib/info/NumbersInfo.java | 56 ++++++++++++++++++--
.../syncope/common/lib/info/PlatformInfo.java | 4 +-
.../apache/syncope/common/lib/info/SystemInfo.java | 6 +--
.../syncope/common/lib/log/EventCategory.java | 4 +-
.../apache/syncope/common/lib/log/LogAppender.java | 5 +-
.../syncope/common/lib/log/LogStatement.java | 4 +-
.../apache/syncope/common/lib/log/LoggerTO.java | 32 +++++++++++-
.../syncope/common/lib/patch/AbstractPatch.java | 29 ++++++++++-
.../common/lib/patch/AbstractPatchItem.java | 28 ++++++++++
.../common/lib/patch/AbstractReplacePatchItem.java | 1 -
.../syncope/common/lib/patch/AnyObjectPatch.java | 31 +++++++++++
.../apache/syncope/common/lib/patch/AnyPatch.java | 42 ++++++++++++++-
.../syncope/common/lib/patch/AssociationPatch.java | 30 +++++++++++
.../apache/syncope/common/lib/patch/AttrPatch.java | 28 ++++++++++
.../common/lib/patch/BooleanReplacePatchItem.java | 1 -
.../common/lib/patch/DeassociationPatch.java | 4 +-
.../syncope/common/lib/patch/GroupPatch.java | 37 +++++++++++++
.../syncope/common/lib/patch/LongPatchItem.java | 1 -
.../syncope/common/lib/patch/MembershipPatch.java | 32 ++++++++++++
.../syncope/common/lib/patch/PasswordPatch.java | 29 +++++++++++
.../common/lib/patch/RelationshipPatch.java | 27 ++++++++++
.../lib/patch/ResourceDeassociationPatch.java | 4 +-
.../syncope/common/lib/patch/StatusPatch.java | 31 +++++++++++
.../syncope/common/lib/patch/StringPatchItem.java | 1 -
.../common/lib/patch/StringReplacePatchItem.java | 1 -
.../apache/syncope/common/lib/patch/UserPatch.java | 41 +++++++++++++++
.../common/lib/policy/AbstractAccountRuleConf.java | 4 +-
.../lib/policy/AbstractCorrelationRuleConf.java | 4 +-
.../lib/policy/AbstractPasswordRuleConf.java | 4 +-
.../apache/syncope/common/lib/policy/PolicyTO.java | 3 +-
.../common/lib/report/AbstractReportletConf.java | 4 +-
.../common/lib/to/AbstractAnnotatedBean.java | 34 +++++++++++-
.../syncope/common/lib/to/AbstractHistoryConf.java | 4 +-
.../common/lib/to/AbstractStartEndBean.java | 32 +++++++++++-
.../syncope/common/lib/to/AccessTokenTO.java | 3 +-
.../apache/syncope/common/lib/to/AnyObjectTO.java | 34 ++++++++++++
.../org/apache/syncope/common/lib/to/AnyTO.java | 45 ++++++++++++++++
.../syncope/common/lib/to/AnyTypeClassTO.java | 3 +-
.../apache/syncope/common/lib/to/AnyTypeTO.java | 3 +-
.../syncope/common/lib/to/ApplicationTO.java | 3 +-
.../org/apache/syncope/common/lib/to/AttrTO.java | 32 +++++++++++-
.../apache/syncope/common/lib/to/ConnBundleTO.java | 4 +-
.../syncope/common/lib/to/ConnIdObjectClassTO.java | 4 +-
.../syncope/common/lib/to/ConnInstanceTO.java | 3 +-
.../apache/syncope/common/lib/to/ConnObjectTO.java | 30 ++++++++++-
.../syncope/common/lib/to/ConnPoolConfTO.java | 4 +-
.../apache/syncope/common/lib/to/DerSchemaTO.java | 28 ++++++++++
.../org/apache/syncope/common/lib/to/DomainTO.java | 3 +-
.../apache/syncope/common/lib/to/DynRealmTO.java | 3 +-
.../org/apache/syncope/common/lib/to/ErrorTO.java | 4 +-
.../org/apache/syncope/common/lib/to/ExecTO.java | 38 ++++++++++++++
.../org/apache/syncope/common/lib/to/GroupTO.java | 37 +++++++++++++
.../syncope/common/lib/to/ImplementationTO.java | 34 +++++++++++-
.../org/apache/syncope/common/lib/to/ItemTO.java | 3 +-
.../org/apache/syncope/common/lib/to/JobTO.java | 4 +-
.../syncope/common/lib/to/MailTemplateTO.java | 3 +-
.../apache/syncope/common/lib/to/MappingTO.java | 4 +-
.../apache/syncope/common/lib/to/MembershipTO.java | 38 +++++++++++++-
.../syncope/common/lib/to/NotificationTO.java | 53 ++++++++++++++++++-
.../syncope/common/lib/to/NotificationTaskTO.java | 46 +++++++++++++++++
.../apache/syncope/common/lib/to/OrgUnitTO.java | 3 +-
.../common/lib/to/PagedConnObjectTOResult.java | 37 ++++++++++++-
.../apache/syncope/common/lib/to/PagedResult.java | 40 ++++++++++++++-
.../syncope/common/lib/to/PlainSchemaTO.java | 49 ++++++++++++++++++
.../apache/syncope/common/lib/to/PrivilegeTO.java | 3 +-
.../syncope/common/lib/to/PropagationStatus.java | 38 +++++++++++++-
.../syncope/common/lib/to/PropagationTaskTO.java | 44 ++++++++++++++++
.../apache/syncope/common/lib/to/ProvisionTO.java | 3 +-
.../syncope/common/lib/to/ProvisioningResult.java | 34 ++++++++++--
.../syncope/common/lib/to/ProvisioningTaskTO.java | 42 +++++++++++++++
.../apache/syncope/common/lib/to/PullTaskTO.java | 33 ++++++++++++
.../apache/syncope/common/lib/to/PushTaskTO.java | 30 +++++++++++
.../org/apache/syncope/common/lib/to/RealmTO.java | 3 +-
.../apache/syncope/common/lib/to/ReconStatus.java | 4 +-
.../syncope/common/lib/to/RelationshipTO.java | 36 ++++++++++++-
.../syncope/common/lib/to/RelationshipTypeTO.java | 3 +-
.../syncope/common/lib/to/RemediationTO.java | 4 +-
.../org/apache/syncope/common/lib/to/ReportTO.java | 45 ++++++++++++++++
.../syncope/common/lib/to/ReportTemplateTO.java | 3 +-
.../common/lib/to/ResourceHistoryConfTO.java | 1 -
.../apache/syncope/common/lib/to/ResourceTO.java | 3 +-
.../org/apache/syncope/common/lib/to/RoleTO.java | 3 +-
.../apache/syncope/common/lib/to/SchedTaskTO.java | 42 +++++++++++++++
.../org/apache/syncope/common/lib/to/SchemaTO.java | 35 ++++++++++++-
.../syncope/common/lib/to/SecurityQuestionTO.java | 30 ++++++++++-
.../org/apache/syncope/common/lib/to/TaskTO.java | 34 ++++++++++++
.../syncope/common/lib/to/TypeExtensionTO.java | 31 ++++++++++-
.../org/apache/syncope/common/lib/to/UserTO.java | 60 +++++++++++++++++++++-
.../apache/syncope/common/lib/to/VirSchemaTO.java | 33 ++++++++++++
.../syncope/common/lib/types/AuditLoggerName.java | 38 +++++++++++++-
.../common/lib/types/ConnConfPropSchema.java | 42 +++++++--------
.../syncope/common/lib/types/ConnConfProperty.java | 34 +++++++++++-
.../org/apache/syncope/common/lib/JAXBTest.java | 2 +-
.../syncope/common/rest/api/LoggerWrapper.java | 13 +++--
.../common/rest/api/batch/BatchPayloadLine.java | 24 +++++++--
.../common/rest/api/beans/AbstractQuery.java | 4 +-
.../rest/api/beans/ConnObjectTOListQuery.java | 19 -------
.../common/rest/api/beans/ExecDeleteQuery.java | 4 +-
.../common/rest/api/beans/ExecuteQuery.java | 4 +-
.../syncope/common/rest/api/beans/SchemaQuery.java | 4 +-
.../core/logic/AbstractExecutableLogic.java | 4 +-
.../syncope/core/logic/AbstractJobLogic.java | 4 +-
.../apache/syncope/core/logic/AbstractLogic.java | 4 +-
.../core/logic/AbstractTransactionalLogic.java | 4 +-
.../syncope/core/logic/ConfigurationLogic.java | 5 +-
.../org/apache/syncope/core/logic/LoggerLogic.java | 5 +-
.../syncope/core/logic/ReconciliationLogic.java | 6 +--
.../apache/syncope/core/logic/SyncopeLogic.java | 7 ++-
.../jpa/entity/AbstractPlainAttrValue.java | 13 +++--
.../api/pushpull/ProvisioningReport.java | 13 +++--
.../syncope/core/provisioning/java/AuditEntry.java | 4 +-
.../core/rest/cxf/service/AbstractServiceImpl.java | 11 ++--
.../apache/syncope/common/lib/to/CamelMetrics.java | 6 +--
.../apache/syncope/common/lib/to/CamelRouteTO.java | 3 +-
.../apache/syncope/common/lib/to/BpmnProcess.java | 3 +-
.../apache/syncope/common/lib/to/UserRequest.java | 4 +-
.../syncope/common/lib/to/UserRequestForm.java | 4 +-
.../common/lib/to/UserRequestFormProperty.java | 4 +-
.../apache/syncope/common/lib/to/WorkflowTask.java | 4 +-
.../common/lib/to/WorkflowTaskExecInput.java | 4 +-
.../syncope/core/logic/UserRequestLogic.java | 5 +-
.../syncope/core/logic/UserWorkflowTaskLogic.java | 6 +--
.../syncope/common/lib/to/OIDCLoginRequestTO.java | 4 +-
.../syncope/common/lib/to/OIDCLoginResponseTO.java | 4 +-
.../syncope/common/lib/to/OIDCLogoutRequestTO.java | 5 +-
.../syncope/common/lib/to/OIDCProviderTO.java | 3 +-
.../apache/syncope/core/logic/OIDCClientLogic.java | 6 +--
.../apache/syncope/common/lib/to/SAML2IdPTO.java | 3 +-
.../common/lib/to/SAML2LoginResponseTO.java | 4 +-
.../common/lib/to/SAML2ReceivedResponseTO.java | 4 +-
.../syncope/common/lib/to/SAML2RequestTO.java | 4 +-
.../syncope/core/logic/AbstractSAML2Logic.java | 4 +-
.../apache/syncope/core/logic/SAML2SPLogic.java | 6 +--
.../org/apache/syncope/core/logic/SCIMLogic.java | 7 ++-
147 files changed, 1966 insertions(+), 371 deletions(-)
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/commons/status/StatusBean.java b/client/console/src/main/java/org/apache/syncope/client/console/commons/status/StatusBean.java
index fc834b5..3a5c766 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/commons/status/StatusBean.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/commons/status/StatusBean.java
@@ -21,8 +21,7 @@ package org.apache.syncope.client.console.commons.status;
import java.io.Serializable;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
+import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.syncope.common.lib.to.AnyObjectTO;
import org.apache.syncope.common.lib.to.AnyTO;
import org.apache.syncope.common.lib.to.GroupTO;
@@ -98,17 +97,48 @@ public class StatusBean implements Serializable {
}
@Override
- public String toString() {
- return ReflectionToStringBuilder.toString(this, ToStringStyle.JSON_STYLE);
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(key).
+ append(name).
+ append(resource).
+ append(connObjectLink).
+ append(status).
+ append(linked).
+ build();
}
@Override
public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final StatusBean other = (StatusBean) obj;
+ return new EqualsBuilder().
+ append(key, other.key).
+ append(name, other.name).
+ append(resource, other.resource).
+ append(connObjectLink, other.connObjectLink).
+ append(status, other.status).
+ append(linked, other.linked).
+ build();
}
@Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
+ public String toString() {
+ return new ToStringBuilder(this).
+ append(key).
+ append(name).
+ append(resource).
+ append(connObjectLink).
+ append(status).
+ append(linked).
+ build();
}
}
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/AbstractLogsPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/AbstractLogsPanel.java
index 5246509..58e1a4e 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/AbstractLogsPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/AbstractLogsPanel.java
@@ -18,6 +18,7 @@
*/
package org.apache.syncope.client.console.panels;
+import java.io.Serializable;
import java.util.Arrays;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
@@ -26,7 +27,6 @@ import org.apache.syncope.client.console.commons.Constants;
import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.wicket.ajax.form.IndicatorAjaxFormComponentUpdatingBehavior;
import org.apache.syncope.client.console.wicket.markup.html.form.AjaxDropDownChoicePanel;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.SyncopeClientException;
import org.apache.syncope.common.lib.log.LoggerTO;
import org.apache.syncope.common.lib.types.LoggerLevel;
@@ -42,7 +42,7 @@ import org.apache.wicket.model.util.ListModel;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-public abstract class AbstractLogsPanel<T extends AbstractBaseBean> extends Panel {
+public abstract class AbstractLogsPanel<T extends Serializable> extends Panel {
private static final Logger LOG = LoggerFactory.getLogger(AbstractLogsPanel.class);
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/HistoryConfList.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/HistoryConfList.java
index aa6880d..5848b7a 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/HistoryConfList.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/HistoryConfList.java
@@ -20,10 +20,10 @@ package org.apache.syncope.client.console.panels;
import java.io.Serializable;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.to.AnyTO;
import org.apache.syncope.common.lib.to.ConnInstanceHistoryConfTO;
import org.apache.syncope.common.lib.to.ConnInstanceTO;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.ResourceHistoryConfTO;
import org.apache.wicket.PageReference;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -38,7 +38,7 @@ public class HistoryConfList<T extends Serializable> extends Panel implements Mo
final BaseModal<?> baseModal,
final String entityKey,
final PageReference pageReference,
- final AbstractBaseBean modelObj) {
+ final EntityTO modelObj) {
super(BaseModal.CONTENT_ID);
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/TypesDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/TypesDirectoryPanel.java
index 8aa4b80..8e4a0f4 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/TypesDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/TypesDirectoryPanel.java
@@ -21,11 +21,11 @@ package org.apache.syncope.client.console.panels;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
import org.apache.syncope.client.console.commons.DirectoryDataProvider;
import org.apache.syncope.client.console.rest.RestClient;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.wicket.PageReference;
public abstract class TypesDirectoryPanel<
- T extends AbstractBaseBean, DP extends DirectoryDataProvider<T>, E extends RestClient>
+ T extends EntityTO, DP extends DirectoryDataProvider<T>, E extends RestClient>
extends DirectoryPanel<T, T, DP, E> {
private static final long serialVersionUID = 7890071604330629259L;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/SearchClause.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/SearchClause.java
index 8d20abc..2953787 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/search/SearchClause.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/search/SearchClause.java
@@ -21,8 +21,7 @@ package org.apache.syncope.client.console.panels.search;
import java.io.Serializable;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
+import org.apache.commons.lang3.builder.ToStringBuilder;
public final class SearchClause implements Serializable {
@@ -116,17 +115,45 @@ public final class SearchClause implements Serializable {
}
@Override
- public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(operator).
+ append(type).
+ append(property).
+ append(comparator).
+ append(value).
+ build();
}
@Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final SearchClause other = (SearchClause) obj;
+ return new EqualsBuilder().
+ append(operator, other.operator).
+ append(type, other.type).
+ append(property, other.property).
+ append(comparator, other.comparator).
+ append(value, other.value).
+ build();
}
@Override
public String toString() {
- return ReflectionToStringBuilder.toString(this, ToStringStyle.JSON_STYLE);
+ return new ToStringBuilder(this).
+ append(operator).
+ append(type).
+ append(property).
+ append(comparator).
+ append(value).
+ build();
}
}
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/status/StatusModal.java b/client/console/src/main/java/org/apache/syncope/client/console/status/StatusModal.java
index d1387e0..50b14cd 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/status/StatusModal.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/status/StatusModal.java
@@ -25,11 +25,11 @@ import org.apache.syncope.client.console.panels.ModalPanel;
import org.apache.syncope.client.console.panels.MultilevelPanel;
import org.apache.syncope.client.console.rest.AbstractAnyRestClient;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.wicket.PageReference;
import org.apache.wicket.markup.html.panel.Panel;
-public abstract class StatusModal<T extends AbstractBaseBean> extends Panel implements ModalPanel {
+public abstract class StatusModal<T extends EntityTO> extends Panel implements ModalPanel {
private static final long serialVersionUID = 1066124171682570080L;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Any.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Any.java
index f0fde29..8c461dd 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Any.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Any.java
@@ -18,11 +18,11 @@
*/
package org.apache.syncope.client.console.widgets.reconciliation;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import org.apache.syncope.common.lib.AbstractBaseBean;
-public class Any extends AbstractBaseBean {
+public class Any implements Serializable {
private static final long serialVersionUID = 2421645848049271898L;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Anys.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Anys.java
index 3c58515..2d35e14 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Anys.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Anys.java
@@ -18,11 +18,11 @@
*/
package org.apache.syncope.client.console.widgets.reconciliation;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import org.apache.syncope.common.lib.AbstractBaseBean;
-public class Anys extends AbstractBaseBean {
+public class Anys implements Serializable {
private static final long serialVersionUID = -2482591351364634179L;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Missing.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Missing.java
index 2d0254a..175d9de 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Missing.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/Missing.java
@@ -18,9 +18,9 @@
*/
package org.apache.syncope.client.console.widgets.reconciliation;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import java.io.Serializable;
-public class Missing extends AbstractBaseBean {
+public class Missing implements Serializable {
private static final long serialVersionUID = -4779715117027316991L;
@@ -40,5 +40,4 @@ public class Missing extends AbstractBaseBean {
public String getConnObjectKeyValue() {
return connObjectKeyValue;
}
-
}
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/ReconciliationReport.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/ReconciliationReport.java
index a178863..696d807 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/ReconciliationReport.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/reconciliation/ReconciliationReport.java
@@ -18,12 +18,12 @@
*/
package org.apache.syncope.client.console.widgets.reconciliation;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
-import org.apache.syncope.common.lib.AbstractBaseBean;
-public class ReconciliationReport extends AbstractBaseBean {
+public class ReconciliationReport implements Serializable {
private static final long serialVersionUID = 931063230006747313L;
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/AbstractConnConfPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/AbstractConnConfPanel.java
index 662272f..da3162e 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/AbstractConnConfPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/AbstractConnConfPanel.java
@@ -24,7 +24,7 @@ import org.apache.syncope.client.console.SyncopeConsoleSession;
import org.apache.syncope.client.console.commons.Constants;
import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.wicket.markup.html.list.ConnConfPropertyListView;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.types.ConnConfProperty;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxButton;
@@ -36,7 +36,7 @@ import org.apache.wicket.model.IModel;
import org.apache.wicket.model.LoadableDetachableModel;
import org.apache.wicket.model.ResourceModel;
-public abstract class AbstractConnConfPanel<T extends AbstractBaseBean> extends WizardStep implements ICondition {
+public abstract class AbstractConnConfPanel<T extends EntityTO> extends WizardStep implements ICondition {
private static final long serialVersionUID = -2025535531121434050L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/AbstractBaseBean.java b/common/lib/src/main/java/org/apache/syncope/common/lib/AbstractBaseBean.java
deleted file mode 100644
index 4562f70..0000000
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/AbstractBaseBean.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * 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.
- */
-package org.apache.syncope.common.lib;
-
-import java.io.Serializable;
-import javax.xml.bind.annotation.XmlSeeAlso;
-import javax.xml.bind.annotation.XmlType;
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-import org.apache.syncope.common.lib.to.TaskTO;
-import org.apache.syncope.common.lib.to.AnyObjectTO;
-import org.apache.syncope.common.lib.to.ReportTO;
-import org.apache.syncope.common.lib.to.GroupTO;
-import org.apache.syncope.common.lib.to.UserTO;
-
-@XmlType
-// Reporting here only classes used via PagedResult
-@XmlSeeAlso({ TaskTO.class, ReportTO.class, GroupTO.class, UserTO.class, AnyObjectTO.class })
-public abstract class AbstractBaseBean implements Serializable {
-
- private static final long serialVersionUID = 3119542005279892164L;
-
- @Override
- public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
- }
-
- @Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
- }
-
- @Override
- public String toString() {
- return ReflectionToStringBuilder.toString(this, ToStringStyle.JSON_STYLE);
- }
-}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/info/JavaImplInfo.java b/common/lib/src/main/java/org/apache/syncope/common/lib/info/JavaImplInfo.java
index 82cd73b..8ba3b4a 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/info/JavaImplInfo.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/info/JavaImplInfo.java
@@ -19,18 +19,18 @@
package org.apache.syncope.common.lib.info;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ImplementationType;
@XmlRootElement(name = "javaImplInfo")
@XmlType
-public class JavaImplInfo extends AbstractBaseBean {
+public class JavaImplInfo implements Serializable {
private static final long serialVersionUID = 4036793959111794959L;
@@ -52,5 +52,4 @@ public class JavaImplInfo extends AbstractBaseBean {
public Set<String> getClasses() {
return classes;
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/info/NumbersInfo.java b/common/lib/src/main/java/org/apache/syncope/common/lib/info/NumbersInfo.java
index c12f1a3..b7cb814 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/info/NumbersInfo.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/info/NumbersInfo.java
@@ -19,18 +19,20 @@
package org.apache.syncope.common.lib.info;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import javax.xml.bind.annotation.XmlEnum;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@XmlRootElement(name = "numbersInfo")
@XmlType
-public class NumbersInfo extends AbstractBaseBean {
+public class NumbersInfo implements Serializable {
private static final long serialVersionUID = 7691187370598649583L;
@@ -63,7 +65,6 @@ public class NumbersInfo extends AbstractBaseBean {
}
return score;
}
-
}
private int totalUsers;
@@ -194,4 +195,53 @@ public class NumbersInfo extends AbstractBaseBean {
return confCompleteness;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(totalUsers).
+ append(usersByRealm).
+ append(usersByStatus).
+ append(totalGroups).
+ append(groupsByRealm).
+ append(anyType1).
+ append(totalAny1).
+ append(any1ByRealm).
+ append(anyType2).
+ append(totalAny2).
+ append(any2ByRealm).
+ append(totalResources).
+ append(totalRoles).
+ append(confCompleteness).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final NumbersInfo other = (NumbersInfo) obj;
+ return new EqualsBuilder().
+ append(totalUsers, other.totalUsers).
+ append(totalGroups, other.totalGroups).
+ append(totalResources, other.totalResources).
+ append(totalRoles, other.totalRoles).
+ append(anyType1, other.anyType1).
+ append(anyType2, other.anyType2).
+ append(usersByRealm, other.usersByRealm).
+ append(usersByStatus, other.usersByStatus).
+ append(groupsByRealm, other.groupsByRealm).
+ append(totalAny1, other.totalAny1).
+ append(any1ByRealm, other.any1ByRealm).
+ append(totalAny2, other.totalAny2).
+ append(any2ByRealm, other.any2ByRealm).
+ append(confCompleteness, other.confCompleteness).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/info/PlatformInfo.java b/common/lib/src/main/java/org/apache/syncope/common/lib/info/PlatformInfo.java
index 2854259..6ea0e93 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/info/PlatformInfo.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/info/PlatformInfo.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.info;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
@@ -29,12 +30,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ImplementationType;
@XmlRootElement(name = "platformInfo")
@XmlType
-public class PlatformInfo extends AbstractBaseBean {
+public class PlatformInfo implements Serializable {
private static final long serialVersionUID = -7941853999417673827L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/info/SystemInfo.java b/common/lib/src/main/java/org/apache/syncope/common/lib/info/SystemInfo.java
index 216316b..5d12ad1 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/info/SystemInfo.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/info/SystemInfo.java
@@ -19,17 +19,17 @@
package org.apache.syncope.common.lib.info;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.Queue;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.collections.CircularFifoQueue;
@XmlRootElement(name = "systemInfo")
@XmlType
-public class SystemInfo extends AbstractBaseBean {
+public class SystemInfo implements Serializable {
private static final long serialVersionUID = -352727968865892499L;
@@ -94,7 +94,7 @@ public class SystemInfo extends AbstractBaseBean {
@XmlRootElement(name = "loadInstant")
@XmlType
- public static class LoadInstant extends AbstractBaseBean {
+ public static class LoadInstant implements Serializable {
private static final long serialVersionUID = 1700788373758716478L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/log/EventCategory.java b/common/lib/src/main/java/org/apache/syncope/common/lib/log/EventCategory.java
index cf7d7a5..7836a76 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/log/EventCategory.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/log/EventCategory.java
@@ -19,18 +19,18 @@
package org.apache.syncope.common.lib.log;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.AuditElements;
@XmlRootElement(name = "eventCategory")
@XmlType
-public class EventCategory extends AbstractBaseBean {
+public class EventCategory implements Serializable {
private static final long serialVersionUID = -4340060002701633401L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogAppender.java b/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogAppender.java
index 317ed59..85c3d28 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogAppender.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogAppender.java
@@ -18,9 +18,9 @@
*/
package org.apache.syncope.common.lib.log;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import java.io.Serializable;
-public class LogAppender extends AbstractBaseBean {
+public class LogAppender implements Serializable {
private static final long serialVersionUID = 5975199884460548302L;
@@ -33,5 +33,4 @@ public class LogAppender extends AbstractBaseBean {
public void setName(final String name) {
this.name = name;
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogStatement.java b/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogStatement.java
index 7c80a9d..f6dc3a3 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogStatement.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/log/LogStatement.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.log;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.LoggerLevel;
@XmlRootElement(name = "logStatement")
@XmlType
-public class LogStatement extends AbstractBaseBean {
+public class LogStatement implements Serializable {
private static final long serialVersionUID = -2931205859104653385L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/log/LoggerTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/log/LoggerTO.java
index f908d2b..a18860f 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/log/LoggerTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/log/LoggerTO.java
@@ -18,15 +18,17 @@
*/
package org.apache.syncope.common.lib.log;
+import java.io.Serializable;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.LoggerLevel;
@XmlRootElement(name = "logger")
@XmlType
-public class LoggerTO extends AbstractBaseBean {
+public class LoggerTO implements Serializable {
private static final long serialVersionUID = -7794833835668648505L;
@@ -50,4 +52,30 @@ public class LoggerTO extends AbstractBaseBean {
public void setKey(final String key) {
this.key = key;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(key).
+ append(level).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final LoggerTO other = (LoggerTO) obj;
+ return new EqualsBuilder().
+ append(key, other.key).
+ append(level, other.level).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatch.java
index bb881a7..522f2d9 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatch.java
@@ -18,14 +18,16 @@
*/
package org.apache.syncope.common.lib.patch;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.PatchOperation;
@XmlType
@XmlSeeAlso({ AbstractPatchItem.class, AttrPatch.class, MembershipPatch.class, RelationshipPatch.class })
-public abstract class AbstractPatch extends AbstractBaseBean {
+public abstract class AbstractPatch implements Serializable {
private static final long serialVersionUID = -4729181508529829580L;
@@ -66,4 +68,27 @@ public abstract class AbstractPatch extends AbstractBaseBean {
this.operation = operation;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(operation).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AbstractPatch other = (AbstractPatch) obj;
+ return new EqualsBuilder().
+ append(operation, other.operation).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatchItem.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatchItem.java
index 6f72065..84e24d5 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatchItem.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractPatchItem.java
@@ -22,6 +22,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlType
@XmlSeeAlso({ AbstractReplacePatchItem.class, LongPatchItem.class, StringPatchItem.class })
@@ -51,4 +53,30 @@ public abstract class AbstractPatchItem<T> extends AbstractPatch {
this.value = value;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(value).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ @SuppressWarnings("unchecked")
+ final AbstractPatchItem<T> other = (AbstractPatchItem<T>) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(value, other.value).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractReplacePatchItem.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractReplacePatchItem.java
index 8282427..febdfee 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractReplacePatchItem.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AbstractReplacePatchItem.java
@@ -44,5 +44,4 @@ public abstract class AbstractReplacePatchItem<T> extends AbstractPatchItem<T> {
public void setOperation(final PatchOperation operation) {
// fixed
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyObjectPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyObjectPatch.java
index 8b0bff2..50965a1 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyObjectPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyObjectPatch.java
@@ -26,6 +26,8 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "anyObjectPatch")
@XmlType
@@ -74,4 +76,33 @@ public class AnyObjectPatch extends AnyPatch {
return super.isEmpty() && name == null && relationships.isEmpty() && memberships.isEmpty();
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(name).
+ append(relationships).
+ append(memberships).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AnyObjectPatch other = (AnyObjectPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(name, other.name).
+ append(relationships, other.relationships).
+ append(memberships, other.memberships).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyPatch.java
index f9b0a7f..d91c5a2 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AnyPatch.java
@@ -23,6 +23,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import io.swagger.v3.oas.annotations.media.Schema;
+import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;
import javax.ws.rs.PathParam;
@@ -31,7 +32,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.to.AttrTO;
@XmlType
@@ -39,7 +41,7 @@ import org.apache.syncope.common.lib.to.AttrTO;
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "@class")
@JsonPropertyOrder(value = { "@class", "key" })
@Schema(subTypes = { UserPatch.class, GroupPatch.class, AnyObjectPatch.class }, discriminatorProperty = "@class")
-public abstract class AnyPatch extends AbstractBaseBean implements AttributablePatch {
+public abstract class AnyPatch implements Serializable, AttributablePatch {
private static final long serialVersionUID = -7445489774552440544L;
@@ -125,4 +127,40 @@ public abstract class AnyPatch extends AbstractBaseBean implements AttributableP
&& plainAttrs.isEmpty() && virAttrs.isEmpty()
&& resources.isEmpty();
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(discriminator).
+ append(key).
+ append(realm).
+ append(auxClasses).
+ append(plainAttrs).
+ append(virAttrs).
+ append(resources).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AnyPatch other = (AnyPatch) obj;
+ return new EqualsBuilder().
+ append(discriminator, other.discriminator).
+ append(key, other.key).
+ append(realm, other.realm).
+ append(auxClasses, other.auxClasses).
+ append(plainAttrs, other.plainAttrs).
+ append(virAttrs, other.virAttrs).
+ append(resources, other.resources).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AssociationPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AssociationPatch.java
index e445aac..b5b343d 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AssociationPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AssociationPatch.java
@@ -22,6 +22,8 @@ import java.util.Collection;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.ResourceAssociationAction;
@XmlRootElement(name = "associationPatch")
@@ -104,4 +106,32 @@ public class AssociationPatch extends PasswordPatch {
public void setAction(final ResourceAssociationAction action) {
this.action = action;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(key).
+ append(action).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AssociationPatch other = (AssociationPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(key, other.key).
+ append(action, other.action).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AttrPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AttrPatch.java
index f41a054..f22937d 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AttrPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/AttrPatch.java
@@ -21,6 +21,8 @@ package org.apache.syncope.common.lib.patch;
import com.fasterxml.jackson.annotation.JsonIgnore;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.to.AttrTO;
@XmlRootElement(name = "attrPatch")
@@ -57,4 +59,30 @@ public class AttrPatch extends AbstractPatch {
public boolean isEmpty() {
return attrTO == null || attrTO.getValues().isEmpty();
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(attrTO).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AttrPatch other = (AttrPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(attrTO, other.attrTO).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/BooleanReplacePatchItem.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/BooleanReplacePatchItem.java
index 9cf1097..aeea67a 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/BooleanReplacePatchItem.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/BooleanReplacePatchItem.java
@@ -33,6 +33,5 @@ public class BooleanReplacePatchItem extends AbstractReplacePatchItem<Boolean> {
protected BooleanReplacePatchItem newInstance() {
return new BooleanReplacePatchItem();
}
-
}
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/DeassociationPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/DeassociationPatch.java
index 74248c8..518d145 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/DeassociationPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/DeassociationPatch.java
@@ -19,6 +19,7 @@
package org.apache.syncope.common.lib.patch;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -28,12 +29,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ResourceDeassociationAction;
@XmlRootElement(name = "deassociationPatch")
@XmlType
-public class DeassociationPatch extends AbstractBaseBean {
+public class DeassociationPatch implements Serializable {
private static final long serialVersionUID = 6295778399633883767L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/GroupPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/GroupPatch.java
index 2ff1ebb..ab12e87 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/GroupPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/GroupPatch.java
@@ -31,6 +31,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
import org.apache.syncope.common.lib.to.TypeExtensionTO;
@@ -117,4 +119,39 @@ public class GroupPatch extends AnyPatch {
&& name == null && userOwner == null && groupOwner == null;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(name).
+ append(userOwner).
+ append(groupOwner).
+ append(udynMembershipCond).
+ append(adynMembershipConds).
+ append(typeExtensions).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final GroupPatch other = (GroupPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(name, other.name).
+ append(userOwner, other.userOwner).
+ append(groupOwner, other.groupOwner).
+ append(udynMembershipCond, other.udynMembershipCond).
+ append(adynMembershipConds, other.adynMembershipConds).
+ append(typeExtensions, other.typeExtensions).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/LongPatchItem.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/LongPatchItem.java
index 96c6050..c1e0ca5 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/LongPatchItem.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/LongPatchItem.java
@@ -33,6 +33,5 @@ public class LongPatchItem extends AbstractPatchItem<Long> {
protected LongPatchItem newInstance() {
return new LongPatchItem();
}
-
}
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/MembershipPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/MembershipPatch.java
index f2dcab5..000da10 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/MembershipPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/MembershipPatch.java
@@ -25,6 +25,8 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.to.AttrTO;
@XmlRootElement(name = "membershipPatch")
@@ -73,4 +75,34 @@ public class MembershipPatch extends AbstractPatch {
public Set<AttrTO> getVirAttrs() {
return virAttrs;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(group).
+ append(plainAttrs).
+ append(virAttrs).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final MembershipPatch other = (MembershipPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(group, other.group).
+ append(plainAttrs, other.plainAttrs).
+ append(virAttrs, other.virAttrs).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/PasswordPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/PasswordPatch.java
index af989e4..5bdd5ff 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/PasswordPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/PasswordPatch.java
@@ -28,6 +28,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "passwordPatch")
@XmlType
@@ -94,4 +96,31 @@ public class PasswordPatch extends StringReplacePatchItem {
return resources;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(onSyncope).
+ append(resources).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PasswordPatch other = (PasswordPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(onSyncope, other.onSyncope).
+ append(resources, other.resources).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/RelationshipPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/RelationshipPatch.java
index f7925e9..8cdf925 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/RelationshipPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/RelationshipPatch.java
@@ -20,6 +20,8 @@ package org.apache.syncope.common.lib.patch;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.to.RelationshipTO;
@XmlRootElement(name = "relationshipPatch")
@@ -51,4 +53,29 @@ public class RelationshipPatch extends AbstractPatch {
this.relationshipTO = relationshipTO;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(relationshipTO).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final RelationshipPatch other = (RelationshipPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(relationshipTO, other.relationshipTO).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/ResourceDeassociationPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/ResourceDeassociationPatch.java
index 233d5bd..6c4dbc5 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/ResourceDeassociationPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/ResourceDeassociationPatch.java
@@ -19,6 +19,7 @@
package org.apache.syncope.common.lib.patch;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.ws.rs.PathParam;
@@ -26,12 +27,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ResourceDeassociationAction;
@XmlRootElement(name = "resourceDeassociationPatch")
@XmlType
-public class ResourceDeassociationPatch extends AbstractBaseBean {
+public class ResourceDeassociationPatch implements Serializable {
private static final long serialVersionUID = -9116268525079837276L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StatusPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StatusPatch.java
index 9c94dc7..fe4277a 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StatusPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StatusPatch.java
@@ -22,6 +22,8 @@ import java.util.Collection;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.StatusPatchType;
@XmlRootElement(name = "statusPatch")
@@ -120,4 +122,33 @@ public class StatusPatch extends PasswordPatch {
this.token = token;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(key).
+ append(type).
+ append(token).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final StatusPatch other = (StatusPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(key, other.key).
+ append(type, other.type).
+ append(token, other.token).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringPatchItem.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringPatchItem.java
index d9aacf8..6ed2ea3 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringPatchItem.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringPatchItem.java
@@ -33,6 +33,5 @@ public class StringPatchItem extends AbstractPatchItem<String> {
protected StringPatchItem newInstance() {
return new StringPatchItem();
}
-
}
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringReplacePatchItem.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringReplacePatchItem.java
index b924484..7c1f551 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringReplacePatchItem.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/StringReplacePatchItem.java
@@ -35,6 +35,5 @@ public class StringReplacePatchItem extends AbstractReplacePatchItem<String> {
protected StringReplacePatchItem newInstance() {
return new StringReplacePatchItem();
}
-
}
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/UserPatch.java b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/UserPatch.java
index 79795ae..fe1e34a 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/patch/UserPatch.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/patch/UserPatch.java
@@ -26,6 +26,8 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "userPatch")
@XmlType
@@ -124,4 +126,43 @@ public class UserPatch extends AnyPatch {
&& username == null && password == null && securityQuestion == null && securityAnswer == null
&& mustChangePassword == null && relationships.isEmpty() && memberships.isEmpty() && roles.isEmpty();
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(username).
+ append(password).
+ append(securityQuestion).
+ append(securityAnswer).
+ append(mustChangePassword).
+ append(relationships).
+ append(memberships).
+ append(roles).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final UserPatch other = (UserPatch) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(username, other.username).
+ append(securityQuestion, other.securityQuestion).
+ append(securityAnswer, other.securityAnswer).
+ append(mustChangePassword, other.mustChangePassword).
+ append(relationships, other.relationships).
+ append(memberships, other.memberships).
+ append(roles, other.roles).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractAccountRuleConf.java b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractAccountRuleConf.java
index 8820779..9509b02 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractAccountRuleConf.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractAccountRuleConf.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.policy;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlType
@XmlSeeAlso({ DefaultAccountRuleConf.class })
-public abstract class AbstractAccountRuleConf extends AbstractBaseBean implements AccountRuleConf {
+public abstract class AbstractAccountRuleConf implements Serializable, AccountRuleConf {
private static final long serialVersionUID = -4080475005967851092L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractCorrelationRuleConf.java b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractCorrelationRuleConf.java
index 0f7d4d6..147d06a 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractCorrelationRuleConf.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractCorrelationRuleConf.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.policy;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlType
@XmlSeeAlso({ DefaultPullCorrelationRuleConf.class, DefaultPushCorrelationRuleConf.class })
-public abstract class AbstractCorrelationRuleConf extends AbstractBaseBean implements RuleConf {
+public abstract class AbstractCorrelationRuleConf implements Serializable, RuleConf {
private static final long serialVersionUID = -4080475005967851092L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractPasswordRuleConf.java b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractPasswordRuleConf.java
index 6d35abd..fec3921 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractPasswordRuleConf.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/AbstractPasswordRuleConf.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.policy;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlType
@XmlSeeAlso({ DefaultPasswordRuleConf.class })
-public abstract class AbstractPasswordRuleConf extends AbstractBaseBean implements PasswordRuleConf {
+public abstract class AbstractPasswordRuleConf implements Serializable, PasswordRuleConf {
private static final long serialVersionUID = -5814018872387142339L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/PolicyTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/PolicyTO.java
index 472d194..624b640 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/policy/PolicyTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/policy/PolicyTO.java
@@ -31,7 +31,6 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.to.EntityTO;
@XmlRootElement(name = "policy")
@@ -42,7 +41,7 @@ import org.apache.syncope.common.lib.to.EntityTO;
@Schema(
subTypes = { AccountPolicyTO.class, PasswordPolicyTO.class, PullPolicyTO.class },
discriminatorProperty = "@class")
-public abstract class PolicyTO extends AbstractBaseBean implements EntityTO {
+public abstract class PolicyTO implements EntityTO {
private static final long serialVersionUID = -2903888572649721035L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/report/AbstractReportletConf.java b/common/lib/src/main/java/org/apache/syncope/common/lib/report/AbstractReportletConf.java
index f590067..0818e41 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/report/AbstractReportletConf.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/report/AbstractReportletConf.java
@@ -18,16 +18,16 @@
*/
package org.apache.syncope.common.lib.report;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlType
@XmlSeeAlso({
StaticReportletConf.class, UserReportletConf.class, GroupReportletConf.class,
AuditReportletConf.class, ReconciliationReportletConf.class })
-public abstract class AbstractReportletConf extends AbstractBaseBean implements ReportletConf {
+public abstract class AbstractReportletConf implements Serializable, ReportletConf {
private static final long serialVersionUID = -6130008602014516608L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractAnnotatedBean.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractAnnotatedBean.java
index 92529bc..741083c 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractAnnotatedBean.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractAnnotatedBean.java
@@ -18,18 +18,19 @@
*/
package org.apache.syncope.common.lib.to;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.Date;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
/**
* Abstract wrapper for common system information.
*/
@XmlType
-public class AbstractAnnotatedBean extends AbstractBaseBean {
+public abstract class AbstractAnnotatedBean implements EntityTO {
private static final long serialVersionUID = -930797879027642457L;
@@ -122,6 +123,35 @@ public class AbstractAnnotatedBean extends AbstractBaseBean {
return etagDate == null
? StringUtils.EMPTY
: String.valueOf(etagDate.getTime());
+ }
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(creator).
+ append(creationDate).
+ append(lastModifier).
+ append(lastChangeDate).
+ build();
+ }
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AbstractAnnotatedBean other = (AbstractAnnotatedBean) obj;
+ return new EqualsBuilder().
+ append(creator, other.creator).
+ append(creationDate, other.creationDate).
+ append(lastModifier, other.lastModifier).
+ append(lastChangeDate, other.lastChangeDate).
+ build();
}
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractHistoryConf.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractHistoryConf.java
index a410a73..08c2293 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractHistoryConf.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractHistoryConf.java
@@ -23,12 +23,11 @@ import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "abstractHistoryConf")
@XmlType
@XmlSeeAlso({ ConnInstanceHistoryConfTO.class, ResourceHistoryConfTO.class })
-public abstract class AbstractHistoryConf extends AbstractBaseBean implements EntityTO {
+public abstract class AbstractHistoryConf implements EntityTO {
private static final long serialVersionUID = -8001640160293506651L;
@@ -68,5 +67,4 @@ public abstract class AbstractHistoryConf extends AbstractBaseBean implements En
? null
: new Date(creation.getTime());
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractStartEndBean.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractStartEndBean.java
index efdec0c..f6fb7aa 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractStartEndBean.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractStartEndBean.java
@@ -19,12 +19,14 @@
package org.apache.syncope.common.lib.to;
import io.swagger.v3.oas.annotations.media.Schema;
+import java.io.Serializable;
import java.util.Date;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlType
-public class AbstractStartEndBean extends AbstractBaseBean {
+public class AbstractStartEndBean implements Serializable {
private static final long serialVersionUID = 2399577415544539917L;
@@ -57,4 +59,30 @@ public class AbstractStartEndBean extends AbstractBaseBean {
? null
: new Date(end.getTime());
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(start).
+ append(end).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AbstractStartEndBean other = (AbstractStartEndBean) obj;
+ return new EqualsBuilder().
+ append(start, other.start).
+ append(end, other.end).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AccessTokenTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AccessTokenTO.java
index a07ef4e..6dd39b3 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AccessTokenTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AccessTokenTO.java
@@ -21,11 +21,10 @@ package org.apache.syncope.common.lib.to;
import java.util.Date;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "accessToken")
@XmlType
-public class AccessTokenTO extends AbstractBaseBean implements EntityTO {
+public class AccessTokenTO implements EntityTO {
private static final long serialVersionUID = 6577639976115661357L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyObjectTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyObjectTO.java
index 3d903b1..a2b6a44 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyObjectTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyObjectTO.java
@@ -29,6 +29,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "anyObject")
@XmlType
@@ -99,4 +101,36 @@ public class AnyObjectTO extends AnyTO implements GroupableRelatableTO {
public List<MembershipTO> getDynMemberships() {
return dynMemberships;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(name).
+ append(relationships).
+ append(memberships).
+ append(dynMemberships).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AnyObjectTO other = (AnyObjectTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(name, other.name).
+ append(relationships, other.relationships).
+ append(memberships, other.memberships).
+ append(dynMemberships, other.dynMemberships).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTO.java
index 727092f..d8bd896 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTO.java
@@ -33,6 +33,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlType
@XmlSeeAlso({ UserTO.class, GroupTO.class, AnyObjectTO.class })
@@ -175,4 +177,47 @@ public abstract class AnyTO extends AbstractAnnotatedBean implements EntityTO, A
return resources;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(key).
+ append(type).
+ append(realm).
+ append(dynRealms).
+ append(status).
+ append(auxClasses).
+ append(plainAttrs).
+ append(derAttrs).
+ append(virAttrs).
+ append(resources).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AnyTO other = (AnyTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(key, other.key).
+ append(type, other.type).
+ append(realm, other.realm).
+ append(dynRealms, other.dynRealms).
+ append(status, other.status).
+ append(auxClasses, other.auxClasses).
+ append(plainAttrs, other.plainAttrs).
+ append(derAttrs, other.derAttrs).
+ append(virAttrs, other.virAttrs).
+ append(resources, other.resources).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
index d68a7fe..dd3166c 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
@@ -26,11 +26,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "anyTypeClass")
@XmlType
-public class AnyTypeClassTO extends AbstractBaseBean implements EntityTO {
+public class AnyTypeClassTO implements EntityTO {
private static final long serialVersionUID = -591757688607551266L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
index 07827cb..5537535 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
@@ -26,12 +26,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.AnyTypeKind;
@XmlRootElement(name = "anyType")
@XmlType
-public class AnyTypeTO extends AbstractBaseBean implements EntityTO {
+public class AnyTypeTO implements EntityTO {
private static final long serialVersionUID = 6771657557616874373L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ApplicationTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ApplicationTO.java
index 798c0be..7283386 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ApplicationTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ApplicationTO.java
@@ -26,11 +26,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "application")
@XmlType
-public class ApplicationTO extends AbstractBaseBean implements EntityTO {
+public class ApplicationTO implements EntityTO {
private static final long serialVersionUID = -4117796727736925215L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AttrTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AttrTO.java
index b06b6b4..570d91f 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AttrTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AttrTO.java
@@ -18,8 +18,8 @@
*/
package org.apache.syncope.common.lib.to;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -29,10 +29,12 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "attribute")
@XmlType
-public class AttrTO extends AbstractBaseBean {
+public class AttrTO implements Serializable {
private static final long serialVersionUID = 4941691338796323623L;
@@ -102,4 +104,30 @@ public class AttrTO extends AbstractBaseBean {
public List<String> getValues() {
return values;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(schema).
+ append(values).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AttrTO other = (AttrTO) obj;
+ return new EqualsBuilder().
+ append(schema, other.schema).
+ append(values, other.values).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnBundleTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnBundleTO.java
index b62c353..0809960 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnBundleTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnBundleTO.java
@@ -19,18 +19,18 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ConnConfPropSchema;
@XmlRootElement(name = "connectorBundle")
@XmlType
-public class ConnBundleTO extends AbstractBaseBean {
+public class ConnBundleTO implements Serializable {
private static final long serialVersionUID = 7215115961910138005L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnIdObjectClassTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnIdObjectClassTO.java
index be1b6d6..5b9c0ee 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnIdObjectClassTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnIdObjectClassTO.java
@@ -19,20 +19,20 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
/**
* Metadata description of ConnId ObjectClass.
*/
@XmlRootElement(name = "connIdObjectClass")
@XmlType
-public class ConnIdObjectClassTO extends AbstractBaseBean {
+public class ConnIdObjectClassTO implements Serializable {
private static final long serialVersionUID = -3719658595689434648L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
index 76424fe..3b5db38 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
@@ -30,13 +30,12 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ConnConfProperty;
import org.apache.syncope.common.lib.types.ConnectorCapability;
@XmlRootElement(name = "connInstance")
@XmlType
-public class ConnInstanceTO extends AbstractBaseBean implements EntityTO {
+public class ConnInstanceTO implements EntityTO {
private static final long serialVersionUID = 2707778645445168671L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnObjectTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnObjectTO.java
index 6086066..e6301b5 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnObjectTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnObjectTO.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.LinkedHashSet;
import java.util.Optional;
import java.util.Set;
@@ -27,11 +28,12 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "connObject")
@XmlType
-public class ConnObjectTO extends AbstractBaseBean {
+public class ConnObjectTO implements Serializable {
private static final long serialVersionUID = 5139554911265442497L;
@@ -48,4 +50,28 @@ public class ConnObjectTO extends AbstractBaseBean {
public Optional<AttrTO> getAttr(final String schema) {
return attrs.stream().filter(attr -> attr.getSchema().equals(schema)).findFirst();
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(attrs).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final ConnObjectTO other = (ConnObjectTO) obj;
+ return new EqualsBuilder().
+ append(attrs, other.attrs).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnPoolConfTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnPoolConfTO.java
index 9f455dc..f92709b 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnPoolConfTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnPoolConfTO.java
@@ -18,13 +18,13 @@
*/
package org.apache.syncope.common.lib.to;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
@XmlRootElement(name = "connPoolConf")
@XmlType
-public class ConnPoolConfTO extends AbstractBaseBean {
+public class ConnPoolConfTO implements Serializable {
private static final long serialVersionUID = -214360178113476623L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/DerSchemaTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/DerSchemaTO.java
index 5508265..5477fca 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/DerSchemaTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/DerSchemaTO.java
@@ -23,6 +23,8 @@ import io.swagger.v3.oas.annotations.media.Schema;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "derSchema")
@XmlType
@@ -48,4 +50,30 @@ public class DerSchemaTO extends SchemaTO {
public void setExpression(final String expression) {
this.expression = expression;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(expression).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final DerSchemaTO other = (DerSchemaTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(expression, other.expression).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/DomainTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/DomainTO.java
index 8994cf8..4e9c1d9 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/DomainTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/DomainTO.java
@@ -20,12 +20,11 @@ package org.apache.syncope.common.lib.to;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.CipherAlgorithm;
@XmlRootElement(name = "domain")
@XmlType
-public class DomainTO extends AbstractBaseBean implements EntityTO {
+public class DomainTO implements EntityTO {
private static final long serialVersionUID = -7938075259986084934L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/DynRealmTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/DynRealmTO.java
index 675020f..ee5d5bc 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/DynRealmTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/DynRealmTO.java
@@ -25,12 +25,11 @@ import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@XmlRootElement(name = "dynRealm")
@XmlType
-public class DynRealmTO extends AbstractBaseBean implements EntityTO {
+public class DynRealmTO implements EntityTO {
private static final long serialVersionUID = 4560822655754800031L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ErrorTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ErrorTO.java
index f643b88..378b814 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ErrorTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ErrorTO.java
@@ -19,18 +19,18 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ClientExceptionType;
@XmlRootElement(name = "error")
@XmlType
-public class ErrorTO extends AbstractBaseBean {
+public class ErrorTO implements Serializable {
private static final long serialVersionUID = 2435764161719225927L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ExecTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ExecTO.java
index 323658e..7ff6e99 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ExecTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ExecTO.java
@@ -20,6 +20,8 @@ package org.apache.syncope.common.lib.to;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.JobType;
@XmlRootElement(name = "exec")
@@ -89,4 +91,40 @@ public class ExecTO extends AbstractStartEndBean implements EntityTO {
public void setStatus(final String status) {
this.status = status;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(key).
+ append(jobType).
+ append(refKey).
+ append(refDesc).
+ append(status).
+ append(message).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final ExecTO other = (ExecTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(key, other.key).
+ append(jobType, other.jobType).
+ append(refKey, other.refKey).
+ append(refDesc, other.refDesc).
+ append(status, other.status).
+ append(message, other.message).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/GroupTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/GroupTO.java
index 95d234d..cc01eda 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/GroupTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/GroupTO.java
@@ -32,6 +32,8 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
import org.apache.syncope.common.lib.types.AnyTypeKind;
@@ -168,4 +170,39 @@ public class GroupTO extends AnyTO {
return typeExtensions;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(name).
+ append(userOwner).
+ append(groupOwner).
+ append(udynMembershipCond).
+ append(adynMembershipConds).
+ append(typeExtensions).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final GroupTO other = (GroupTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(name, other.name).
+ append(userOwner, other.userOwner).
+ append(groupOwner, other.groupOwner).
+ append(udynMembershipCond, other.udynMembershipCond).
+ append(adynMembershipConds, other.adynMembershipConds).
+ append(typeExtensions, other.typeExtensions).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ImplementationTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ImplementationTO.java
index 842045e..cae2fb6 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ImplementationTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ImplementationTO.java
@@ -21,13 +21,14 @@ package org.apache.syncope.common.lib.to;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.ImplementationEngine;
import org.apache.syncope.common.lib.types.ImplementationType;
@XmlRootElement(name = "implementation")
@XmlType
-public class ImplementationTO extends AbstractBaseBean implements EntityTO {
+public class ImplementationTO implements EntityTO {
private static final long serialVersionUID = 2703397698393060586L;
@@ -75,4 +76,33 @@ public class ImplementationTO extends AbstractBaseBean implements EntityTO {
this.body = body;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(key).
+ append(engine).
+ append(type).
+ append(body).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final ImplementationTO other = (ImplementationTO) obj;
+ return new EqualsBuilder().
+ append(key, other.key).
+ append(engine, other.engine).
+ append(type, other.type).
+ append(body, other.body).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ItemTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ItemTO.java
index 0bed627..27066be 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ItemTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ItemTO.java
@@ -25,12 +25,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.MappingPurpose;
@XmlRootElement(name = "item")
@XmlType
-public class ItemTO extends AbstractBaseBean implements EntityTO {
+public class ItemTO implements EntityTO {
private static final long serialVersionUID = 2983498836767176862L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/JobTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/JobTO.java
index cee8db2..188c9cb 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/JobTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/JobTO.java
@@ -18,15 +18,15 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import java.util.Date;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.JobType;
@XmlRootElement(name = "job")
@XmlType
-public class JobTO extends AbstractBaseBean {
+public class JobTO implements Serializable {
private static final long serialVersionUID = -7254450981751326711L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/MailTemplateTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/MailTemplateTO.java
index bf25867..fcbb186 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/MailTemplateTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/MailTemplateTO.java
@@ -21,11 +21,10 @@ package org.apache.syncope.common.lib.to;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "mailTemplate")
@XmlType
-public class MailTemplateTO extends AbstractBaseBean implements EntityTO {
+public class MailTemplateTO implements EntityTO {
private static final long serialVersionUID = 8389755049666062735L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/MappingTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/MappingTO.java
index 69500e8..cdad731 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/MappingTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/MappingTO.java
@@ -19,17 +19,17 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "mapping")
@XmlType
-public class MappingTO extends AbstractBaseBean implements ItemContainerTO {
+public class MappingTO implements ItemContainerTO, Serializable {
private static final long serialVersionUID = 8447688036282611118L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/MembershipTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/MembershipTO.java
index c606851..7696c08 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/MembershipTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/MembershipTO.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.HashSet;
import java.util.Optional;
import java.util.Set;
@@ -27,11 +28,12 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "membership")
@XmlType
-public class MembershipTO extends AbstractBaseBean implements AttributableTO {
+public class MembershipTO implements Serializable, AttributableTO {
private static final long serialVersionUID = 5992828670273935861L;
@@ -122,4 +124,36 @@ public class MembershipTO extends AbstractBaseBean implements AttributableTO {
public Optional<AttrTO> getVirAttr(final String schema) {
return virAttrs.stream().filter(attr -> attr.getSchema().equals(schema)).findFirst();
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(groupKey).
+ append(groupName).
+ append(plainAttrs).
+ append(derAttrs).
+ append(virAttrs).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final MembershipTO other = (MembershipTO) obj;
+ return new EqualsBuilder().
+ append(groupKey, other.groupKey).
+ append(groupName, other.groupName).
+ append(plainAttrs, other.plainAttrs).
+ append(derAttrs, other.derAttrs).
+ append(virAttrs, other.virAttrs).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
index 83fb7e8..f421459 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
@@ -29,13 +29,14 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
import org.apache.syncope.common.lib.types.TraceLevel;
@XmlRootElement(name = "notification")
@XmlType
-public class NotificationTO extends AbstractBaseBean implements EntityTO {
+public class NotificationTO implements EntityTO {
private static final long serialVersionUID = -6145117115632592612L;
@@ -167,4 +168,52 @@ public class NotificationTO extends AbstractBaseBean implements EntityTO {
public void setActive(final boolean active) {
this.active = active;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(key).
+ append(events).
+ append(abouts).
+ append(recipientsFIQL).
+ append(staticRecipients).
+ append(recipientAttrName).
+ append(selfAsRecipient).
+ append(recipientsProvider).
+ append(sender).
+ append(subject).
+ append(template).
+ append(traceLevel).
+ append(active).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final NotificationTO other = (NotificationTO) obj;
+ return new EqualsBuilder().
+ append(key, other.key).
+ append(events, other.events).
+ append(abouts, other.abouts).
+ append(recipientsFIQL, other.recipientsFIQL).
+ append(staticRecipients, other.staticRecipients).
+ append(recipientAttrName, other.recipientAttrName).
+ append(selfAsRecipient, other.selfAsRecipient).
+ append(recipientsProvider, other.recipientsProvider).
+ append(sender, other.sender).
+ append(subject, other.subject).
+ append(template, other.template).
+ append(traceLevel, other.traceLevel).
+ append(active, other.active).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTaskTO.java
index ddab19a..5ea6618 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTaskTO.java
@@ -27,6 +27,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.AnyTypeKind;
import org.apache.syncope.common.lib.types.TraceLevel;
@@ -153,4 +155,48 @@ public class NotificationTaskTO extends TaskTO {
public void setTraceLevel(final TraceLevel traceLevel) {
this.traceLevel = traceLevel;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(notification).
+ append(anyTypeKind).
+ append(entityKey).
+ append(recipients).
+ append(sender).
+ append(subject).
+ append(textBody).
+ append(htmlBody).
+ append(executed).
+ append(traceLevel).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final NotificationTaskTO other = (NotificationTaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(notification, other.notification).
+ append(anyTypeKind, other.anyTypeKind).
+ append(entityKey, other.entityKey).
+ append(recipients, other.recipients).
+ append(sender, other.sender).
+ append(subject, other.subject).
+ append(textBody, other.textBody).
+ append(htmlBody, other.htmlBody).
+ append(executed, other.executed).
+ append(traceLevel, other.traceLevel).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/OrgUnitTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/OrgUnitTO.java
index 8c4b8b1..950b78b 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/OrgUnitTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/OrgUnitTO.java
@@ -25,11 +25,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "orgUnit")
@XmlType
-public class OrgUnitTO extends AbstractBaseBean implements EntityTO, ItemContainerTO {
+public class OrgUnitTO implements EntityTO, ItemContainerTO {
private static final long serialVersionUID = -1868877794174953177L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedConnObjectTOResult.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedConnObjectTOResult.java
index 33e4c5d..15f7848 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedConnObjectTOResult.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedConnObjectTOResult.java
@@ -19,6 +19,7 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.net.URI;
import java.util.ArrayList;
import java.util.List;
@@ -26,11 +27,12 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "pagedConnObjectResult")
@XmlType
-public class PagedConnObjectTOResult extends AbstractBaseBean {
+public class PagedConnObjectTOResult implements Serializable {
private static final long serialVersionUID = -2832908019064402976L;
@@ -117,4 +119,35 @@ public class PagedConnObjectTOResult extends AbstractBaseBean {
return result;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(next).
+ append(result).
+ append(pagedResultsCookie).
+ append(remainingPagedResults).
+ append(allResultsReturned).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PagedConnObjectTOResult other = (PagedConnObjectTOResult) obj;
+ return new EqualsBuilder().
+ append(next, other.next).
+ append(result, other.result).
+ append(pagedResultsCookie, other.pagedResultsCookie).
+ append(remainingPagedResults, other.remainingPagedResults).
+ append(allResultsReturned, other.allResultsReturned).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedResult.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedResult.java
index b17db6d..f5ec00f 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedResult.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PagedResult.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import java.io.Serializable;
import java.net.URI;
import java.util.ArrayList;
import java.util.List;
@@ -27,11 +28,12 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "pagedResult")
@XmlType
-public class PagedResult<T extends AbstractBaseBean> extends AbstractBaseBean {
+public class PagedResult<T extends Serializable> implements Serializable {
private static final long serialVersionUID = 3472875885259250934L;
@@ -95,4 +97,38 @@ public class PagedResult<T extends AbstractBaseBean> extends AbstractBaseBean {
this.totalCount = totalCount;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(prev).
+ append(next).
+ append(result).
+ append(page).
+ append(size).
+ append(totalCount).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ @SuppressWarnings("unchecked")
+ final PagedResult<T> other = (PagedResult<T>) obj;
+ return new EqualsBuilder().
+ append(prev, other.prev).
+ append(next, other.next).
+ append(result, other.result).
+ append(page, other.page).
+ append(size, other.size).
+ append(totalCount, other.totalCount).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PlainSchemaTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PlainSchemaTO.java
index 7e5d3de..338b642 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PlainSchemaTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PlainSchemaTO.java
@@ -25,6 +25,8 @@ import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.AttrSchemaType;
import org.apache.syncope.common.lib.types.CipherAlgorithm;
@@ -165,4 +167,51 @@ public class PlainSchemaTO extends SchemaTO {
this.mimeType = mimeType;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(type).
+ append(mandatoryCondition).
+ append(multivalue).
+ append(uniqueConstraint).
+ append(readonly).
+ append(conversionPattern).
+ append(validator).
+ append(enumerationKeys).
+ append(enumerationValues).
+ append(secretKey).
+ append(cipherAlgorithm).
+ append(mimeType).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PlainSchemaTO other = (PlainSchemaTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(type, other.type).
+ append(mandatoryCondition, other.mandatoryCondition).
+ append(multivalue, other.multivalue).
+ append(uniqueConstraint, other.uniqueConstraint).
+ append(readonly, other.readonly).
+ append(conversionPattern, other.conversionPattern).
+ append(validator, other.validator).
+ append(enumerationKeys, other.enumerationKeys).
+ append(enumerationValues, other.enumerationValues).
+ append(secretKey, other.secretKey).
+ append(cipherAlgorithm, other.cipherAlgorithm).
+ append(mimeType, other.mimeType).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PrivilegeTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PrivilegeTO.java
index b4f94ec..228bc99 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PrivilegeTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PrivilegeTO.java
@@ -21,11 +21,10 @@ package org.apache.syncope.common.lib.to;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "privilege")
@XmlType
-public class PrivilegeTO extends AbstractBaseBean implements EntityTO {
+public class PrivilegeTO implements EntityTO {
private static final long serialVersionUID = 5461846770586031758L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationStatus.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationStatus.java
index ee6f627..c6d1e0e 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationStatus.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationStatus.java
@@ -18,9 +18,11 @@
*/
package org.apache.syncope.common.lib.to;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.ExecStatus;
/**
@@ -28,7 +30,7 @@ import org.apache.syncope.common.lib.types.ExecStatus;
*/
@XmlRootElement(name = "propagationStatus")
@XmlType
-public class PropagationStatus extends AbstractBaseBean {
+public class PropagationStatus implements Serializable {
private static final long serialVersionUID = 3921498450222857690L;
@@ -96,4 +98,36 @@ public class PropagationStatus extends AbstractBaseBean {
public void setFailureReason(final String failureReason) {
this.failureReason = failureReason;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(beforeObj).
+ append(afterObj).
+ append(resource).
+ append(status).
+ append(failureReason).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PropagationStatus other = (PropagationStatus) obj;
+ return new EqualsBuilder().
+ append(beforeObj, other.beforeObj).
+ append(afterObj, other.afterObj).
+ append(resource, other.resource).
+ append(status, other.status).
+ append(failureReason, other.failureReason).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationTaskTO.java
index 5d6ee20..5b06fcc 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PropagationTaskTO.java
@@ -24,6 +24,8 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.AnyTypeKind;
import org.apache.syncope.common.lib.types.ResourceOperation;
@@ -147,4 +149,46 @@ public class PropagationTaskTO extends TaskTO {
public void setEntityKey(final String entityKey) {
this.entityKey = entityKey;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(operation).
+ append(connObjectKey).
+ append(oldConnObjectKey).
+ append(attributes).
+ append(resource).
+ append(objectClassName).
+ append(anyTypeKind).
+ append(anyType).
+ append(entityKey).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PropagationTaskTO other = (PropagationTaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(operation, other.operation).
+ append(connObjectKey, other.connObjectKey).
+ append(oldConnObjectKey, other.oldConnObjectKey).
+ append(attributes, other.attributes).
+ append(resource, other.resource).
+ append(objectClassName, other.objectClassName).
+ append(anyTypeKind, other.anyTypeKind).
+ append(anyType, other.anyType).
+ append(entityKey, other.entityKey).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisionTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisionTO.java
index 12206c1..ec271e9 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisionTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisionTO.java
@@ -25,11 +25,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "provision")
@XmlType
-public class ProvisionTO extends AbstractBaseBean implements EntityTO {
+public class ProvisionTO implements EntityTO {
private static final long serialVersionUID = 8298910216218007927L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningResult.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningResult.java
index c36f97e..09bae8a 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningResult.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningResult.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
@@ -28,12 +29,13 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlEntityTOAdapter;
@XmlRootElement(name = "provisioningResult")
@XmlType
-public class ProvisioningResult<E extends EntityTO> extends AbstractBaseBean {
+public class ProvisioningResult<E extends EntityTO> implements Serializable {
private static final long serialVersionUID = 351317476398082746L;
@@ -49,8 +51,8 @@ public class ProvisioningResult<E extends EntityTO> extends AbstractBaseBean {
return entity;
}
- public void setEntity(final E any) {
- this.entity = any;
+ public void setEntity(final E entity) {
+ this.entity = entity;
}
@XmlElementWrapper(name = "propagationStatuses")
@@ -60,4 +62,28 @@ public class ProvisioningResult<E extends EntityTO> extends AbstractBaseBean {
return propagationStatuses;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(entity).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ @SuppressWarnings("unchecked")
+ final ProvisioningResult<E> other = (ProvisioningResult<E>) obj;
+ return new EqualsBuilder().
+ append(entity, other.entity).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningTaskTO.java
index cdef683..c1f8540 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ProvisioningTaskTO.java
@@ -27,6 +27,8 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.MatchingRule;
import org.apache.syncope.common.lib.types.UnmatchingRule;
@@ -119,4 +121,44 @@ public abstract class ProvisioningTaskTO extends SchedTaskTO {
public void setMatchingRule(final MatchingRule matchigRule) {
this.matchingRule = matchigRule;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(resource).
+ append(performCreate).
+ append(performUpdate).
+ append(performDelete).
+ append(syncStatus).
+ append(unmatchingRule).
+ append(matchingRule).
+ append(actions).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final ProvisioningTaskTO other = (ProvisioningTaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(resource, other.resource).
+ append(performCreate, other.performCreate).
+ append(performUpdate, other.performUpdate).
+ append(performDelete, other.performDelete).
+ append(syncStatus, other.syncStatus).
+ append(unmatchingRule, other.unmatchingRule).
+ append(matchingRule, other.matchingRule).
+ append(actions, other.actions).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PullTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PullTaskTO.java
index 3981200..f32b554 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PullTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PullTaskTO.java
@@ -29,6 +29,8 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
import org.apache.syncope.common.lib.types.PullMode;
@@ -101,4 +103,35 @@ public class PullTaskTO extends ProvisioningTaskTO implements TemplatableTO {
this.remediation = remediation;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(pullMode).
+ append(reconFilterBuilder).
+ append(destinationRealm).
+ append(remediation).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PullTaskTO other = (PullTaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(pullMode, other.pullMode).
+ append(reconFilterBuilder, other.reconFilterBuilder).
+ append(destinationRealm, other.destinationRealm).
+ append(remediation, other.remediation).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PushTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PushTaskTO.java
index d9f8d6e..a1eaf11 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/PushTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/PushTaskTO.java
@@ -29,6 +29,8 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@XmlRootElement(name = "pushTask")
@@ -66,4 +68,32 @@ public class PushTaskTO extends ProvisioningTaskTO {
public Map<String, String> getFilters() {
return filters;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(sourceRealm).
+ append(filters).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final PushTaskTO other = (PushTaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(sourceRealm, other.sourceRealm).
+ append(filters, other.filters).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
index fd368e6..c38fc85 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
@@ -31,12 +31,11 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@XmlRootElement(name = "realm")
@XmlType
-public class RealmTO extends AbstractBaseBean implements EntityTO, TemplatableTO {
+public class RealmTO implements EntityTO, TemplatableTO {
private static final long serialVersionUID = 516330662956254391L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReconStatus.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReconStatus.java
index da601c0..04577c8 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReconStatus.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReconStatus.java
@@ -19,7 +19,7 @@
package org.apache.syncope.common.lib.to;
import io.swagger.v3.oas.annotations.media.Schema;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
@@ -28,7 +28,7 @@ import javax.xml.bind.annotation.XmlType;
*/
@XmlRootElement(name = "reconStatus")
@XmlType
-public class ReconStatus extends AbstractBaseBean {
+public class ReconStatus implements Serializable {
private static final long serialVersionUID = -8516345256596521490L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTO.java
index 06dbd0d..efc9d76 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTO.java
@@ -18,13 +18,15 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "relationship")
@XmlType
-public class RelationshipTO extends AbstractBaseBean {
+public class RelationshipTO implements Serializable {
private static final long serialVersionUID = 360672942026613929L;
@@ -94,4 +96,34 @@ public class RelationshipTO extends AbstractBaseBean {
public void setOtherEndName(final String otherEndName) {
this.otherEndName = otherEndName;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(type).
+ append(otherEndType).
+ append(otherEndKey).
+ append(otherEndName).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final RelationshipTO other = (RelationshipTO) obj;
+ return new EqualsBuilder().
+ append(type, other.type).
+ append(otherEndType, other.otherEndType).
+ append(otherEndKey, other.otherEndKey).
+ append(otherEndName, other.otherEndName).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTypeTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTypeTO.java
index d5eba40..5db2ac4 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTypeTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RelationshipTypeTO.java
@@ -21,11 +21,10 @@ package org.apache.syncope.common.lib.to;
import javax.ws.rs.Path;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "relationshipType")
@XmlType
-public class RelationshipTypeTO extends AbstractBaseBean implements EntityTO {
+public class RelationshipTypeTO implements EntityTO {
private static final long serialVersionUID = -1884088415277925817L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RemediationTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RemediationTO.java
index 7561bb1..4354b55 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RemediationTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RemediationTO.java
@@ -23,13 +23,12 @@ import java.util.Date;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.patch.AnyPatch;
import org.apache.syncope.common.lib.types.ResourceOperation;
@XmlRootElement(name = "remediation")
@XmlType
-public class RemediationTO extends AbstractBaseBean implements EntityTO {
+public class RemediationTO implements EntityTO {
private static final long serialVersionUID = 3983540425142284975L;
@@ -160,5 +159,4 @@ public class RemediationTO extends AbstractBaseBean implements EntityTO {
public void setRemoteName(final String remoteName) {
this.remoteName = remoteName;
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
index 636f3eb..3de4ad1 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
@@ -27,6 +27,8 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "report")
@XmlType
@@ -135,4 +137,47 @@ public class ReportTO extends AbstractStartEndBean implements EntityTO {
this.template = template;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(key).
+ append(name).
+ append(reportlets).
+ append(cronExpression).
+ append(executions).
+ append(latestExecStatus).
+ append(lastExec).
+ append(nextExec).
+ append(active).
+ append(template).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final ReportTO other = (ReportTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(key, other.key).
+ append(name, other.name).
+ append(reportlets, other.reportlets).
+ append(cronExpression, other.cronExpression).
+ append(executions, other.executions).
+ append(latestExecStatus, other.latestExecStatus).
+ append(lastExec, other.lastExec).
+ append(nextExec, other.nextExec).
+ append(active, other.active).
+ append(template, other.template).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTemplateTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTemplateTO.java
index 1731d4c..8a7d8e6 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTemplateTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTemplateTO.java
@@ -21,11 +21,10 @@ package org.apache.syncope.common.lib.to;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "reportTemplate")
@XmlType
-public class ReportTemplateTO extends AbstractBaseBean implements EntityTO {
+public class ReportTemplateTO implements EntityTO {
private static final long serialVersionUID = 7776679004906244896L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceHistoryConfTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceHistoryConfTO.java
index 388b63c..5268299 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceHistoryConfTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceHistoryConfTO.java
@@ -36,5 +36,4 @@ public class ResourceHistoryConfTO extends AbstractHistoryConf {
public void setResourceTO(final ResourceTO resourceTO) {
this.resourceTO = resourceTO;
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
index d0061bb..b96a206 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
@@ -30,14 +30,13 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.ConnConfProperty;
import org.apache.syncope.common.lib.types.ConnectorCapability;
import org.apache.syncope.common.lib.types.TraceLevel;
@XmlRootElement(name = "resource")
@XmlType
-public class ResourceTO extends AbstractBaseBean implements EntityTO {
+public class ResourceTO implements EntityTO {
private static final long serialVersionUID = -9193551354041698963L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
index a474b6b..d9d3aee 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
@@ -28,11 +28,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "role")
@XmlType
-public class RoleTO extends AbstractBaseBean implements EntityTO {
+public class RoleTO implements EntityTO {
private static final long serialVersionUID = 4560822655754800031L;
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchedTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchedTaskTO.java
index e0a35c6..0ad6af2 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchedTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchedTaskTO.java
@@ -26,6 +26,8 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "schedTask")
@XmlType
@@ -126,4 +128,44 @@ public class SchedTaskTO extends TaskTO {
public void setActive(final boolean active) {
this.active = active;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(startAt).
+ append(cronExpression).
+ append(jobDelegate).
+ append(name).
+ append(description).
+ append(lastExec).
+ append(nextExec).
+ append(active).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final SchedTaskTO other = (SchedTaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(startAt, other.startAt).
+ append(cronExpression, other.cronExpression).
+ append(jobDelegate, other.jobDelegate).
+ append(name, other.name).
+ append(description, other.description).
+ append(lastExec, other.lastExec).
+ append(nextExec, other.nextExec).
+ append(active, other.active).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchemaTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchemaTO.java
index 4659a65..2d5f752 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchemaTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SchemaTO.java
@@ -32,7 +32,8 @@ import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@XmlRootElement(name = "schema")
@@ -41,7 +42,7 @@ import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "@class")
@JsonPropertyOrder(value = { "@class", "key" })
@Schema(subTypes = { PlainSchemaTO.class, DerSchemaTO.class, VirSchemaTO.class }, discriminatorProperty = "@class")
-public abstract class SchemaTO extends AbstractBaseBean implements EntityTO {
+public abstract class SchemaTO implements EntityTO {
private static final long serialVersionUID = 4088388951694301759L;
@@ -91,4 +92,34 @@ public abstract class SchemaTO extends AbstractBaseBean implements EntityTO {
public Map<Locale, String> getLabels() {
return labels;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(discriminator).
+ append(key).
+ append(anyTypeClass).
+ append(labels).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final SchemaTO other = (SchemaTO) obj;
+ return new EqualsBuilder().
+ append(discriminator, other.discriminator).
+ append(key, other.key).
+ append(anyTypeClass, other.anyTypeClass).
+ append(labels, other.labels).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
index bf3d221..9a6cf8b 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
@@ -21,11 +21,12 @@ package org.apache.syncope.common.lib.to;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "securityQuestion")
@XmlType
-public class SecurityQuestionTO extends AbstractBaseBean implements EntityTO {
+public class SecurityQuestionTO implements EntityTO {
private static final long serialVersionUID = 5969810939993556530L;
@@ -52,4 +53,29 @@ public class SecurityQuestionTO extends AbstractBaseBean implements EntityTO {
this.content = content;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(key).
+ append(content).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final SecurityQuestionTO other = (SecurityQuestionTO) obj;
+ return new EqualsBuilder().
+ append(key, other.key).
+ append(content, other.content).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/TaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/TaskTO.java
index 5c73c5c..51c7a6b 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/TaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/TaskTO.java
@@ -31,6 +31,8 @@ import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "task")
@XmlType
@@ -89,4 +91,36 @@ public abstract class TaskTO extends AbstractStartEndBean implements EntityTO {
public List<ExecTO> getExecutions() {
return executions;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(key).
+ append(discriminator).
+ append(executions).
+ append(latestExecStatus).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final TaskTO other = (TaskTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(key, other.key).
+ append(discriminator, other.discriminator).
+ append(executions, other.executions).
+ append(latestExecStatus, other.latestExecStatus).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/TypeExtensionTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/TypeExtensionTO.java
index f8dea41..3707221 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/TypeExtensionTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/TypeExtensionTO.java
@@ -19,17 +19,19 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "typeExtension")
@XmlType
-public class TypeExtensionTO extends AbstractBaseBean {
+public class TypeExtensionTO implements Serializable {
private static final long serialVersionUID = -5422809645030924811L;
@@ -52,4 +54,29 @@ public class TypeExtensionTO extends AbstractBaseBean {
return auxClasses;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(anyType).
+ append(auxClasses).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final TypeExtensionTO other = (TypeExtensionTO) obj;
+ return new EqualsBuilder().
+ append(anyType, other.anyType).
+ append(auxClasses, other.auxClasses).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/UserTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/UserTO.java
index b47f042..4d1da53 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/UserTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/UserTO.java
@@ -31,7 +31,8 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.commons.lang3.builder.ToStringExclude;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.syncope.common.lib.types.AnyTypeKind;
@XmlRootElement(name = "user")
@@ -41,7 +42,6 @@ public class UserTO extends AnyTO implements GroupableRelatableTO {
private static final long serialVersionUID = 7791304495192615740L;
- @ToStringExclude
private String password;
private final List<String> roles = new ArrayList<>();
@@ -271,4 +271,60 @@ public class UserTO extends AnyTO implements GroupableRelatableTO {
public List<MembershipTO> getDynMemberships() {
return dynMemberships;
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(username).
+ append(roles).
+ append(dynRoles).
+ append(privileges).
+ append(token).
+ append(tokenExpireTime).
+ append(lastLoginDate).
+ append(changePwdDate).
+ append(failedLogins).
+ append(securityQuestion).
+ append(securityAnswer).
+ append(suspended).
+ append(mustChangePassword).
+ append(relationships).
+ append(memberships).
+ append(dynMemberships).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final UserTO other = (UserTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(username, other.username).
+ append(roles, other.roles).
+ append(dynRoles, other.dynRoles).
+ append(privileges, other.privileges).
+ append(token, other.token).
+ append(tokenExpireTime, other.tokenExpireTime).
+ append(lastLoginDate, other.lastLoginDate).
+ append(changePwdDate, other.changePwdDate).
+ append(failedLogins, other.failedLogins).
+ append(securityQuestion, other.securityQuestion).
+ append(securityAnswer, other.securityAnswer).
+ append(suspended, other.suspended).
+ append(mustChangePassword, other.mustChangePassword).
+ append(relationships, other.relationships).
+ append(memberships, other.memberships).
+ append(dynMemberships, other.dynMemberships).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/VirSchemaTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/VirSchemaTO.java
index 300e129..7f6dac6 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/VirSchemaTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/VirSchemaTO.java
@@ -22,6 +22,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement(name = "virSchema")
@Schema(allOf = { SchemaTO.class })
@@ -77,4 +79,35 @@ public class VirSchemaTO extends SchemaTO {
this.extAttrName = extAttrName;
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ appendSuper(super.hashCode()).
+ append(readonly).
+ append(resource).
+ append(anyType).
+ append(extAttrName).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final VirSchemaTO other = (VirSchemaTO) obj;
+ return new EqualsBuilder().
+ appendSuper(super.equals(obj)).
+ append(readonly, other.readonly).
+ append(resource, other.resource).
+ append(anyType, other.anyType).
+ append(extAttrName, other.extAttrName).
+ build();
+ }
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/types/AuditLoggerName.java b/common/lib/src/main/java/org/apache/syncope/common/lib/types/AuditLoggerName.java
index a8ad231..da30563 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/types/AuditLoggerName.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/types/AuditLoggerName.java
@@ -20,16 +20,18 @@ package org.apache.syncope.common.lib.types;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.text.ParseException;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.tuple.Pair;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.log.EventCategory;
import org.apache.syncope.common.lib.types.AuditElements.EventCategoryType;
import org.apache.syncope.common.lib.types.AuditElements.Result;
-public class AuditLoggerName extends AbstractBaseBean {
+public class AuditLoggerName implements Serializable {
private static final long serialVersionUID = -647989486671786839L;
@@ -93,6 +95,38 @@ public class AuditLoggerName extends AbstractBaseBean {
append(buildEvent(type, category, subcategory, event, result)).toString();
}
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(type).
+ append(category).
+ append(subcategory).
+ append(event).
+ append(result).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final AuditLoggerName other = (AuditLoggerName) obj;
+ return new EqualsBuilder().
+ append(type, other.type).
+ append(category, other.category).
+ append(subcategory, other.subcategory).
+ append(event, other.event).
+ append(result, other.result).
+ build();
+ }
+
public static AuditLoggerName fromLoggerName(final String loggerName)
throws ParseException {
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfPropSchema.java b/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfPropSchema.java
index 1958dc6..7bdcbbd 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfPropSchema.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfPropSchema.java
@@ -19,18 +19,19 @@
package org.apache.syncope.common.lib.types;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import java.util.Objects;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement
@XmlType
-public class ConnConfPropSchema extends AbstractBaseBean implements Comparable<ConnConfPropSchema> {
+public class ConnConfPropSchema implements Serializable, Comparable<ConnConfPropSchema> {
private static final long serialVersionUID = -1976365781005801296L;
@@ -124,13 +125,13 @@ public class ConnConfPropSchema extends AbstractBaseBean implements Comparable<C
@Override
public int hashCode() {
- int hash = 5;
- hash = 53 * hash + Objects.hashCode(this.name);
- hash = 53 * hash + Objects.hashCode(this.type);
- hash = 53 * hash + (this.required ? 1 : 0);
- hash = 53 * hash + this.order;
- hash = 53 * hash + (this.confidential ? 1 : 0);
- return hash;
+ return new HashCodeBuilder().
+ append(name).
+ append(type).
+ append(required).
+ append(order).
+ append(confidential).
+ build();
}
@Override
@@ -145,19 +146,12 @@ public class ConnConfPropSchema extends AbstractBaseBean implements Comparable<C
return false;
}
final ConnConfPropSchema other = (ConnConfPropSchema) obj;
- if (this.required != other.required) {
- return false;
- }
- if (this.order != other.order) {
- return false;
- }
- if (this.confidential != other.confidential) {
- return false;
- }
- if (!Objects.equals(this.name, other.name)) {
- return false;
- }
- return Objects.equals(this.type, other.type);
+ return new EqualsBuilder().
+ append(name, other.name).
+ append(type, other.type).
+ append(required, other.required).
+ append(order, other.order).
+ append(confidential, other.confidential).
+ build();
}
-
}
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfProperty.java b/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfProperty.java
index f4d321b..111d4a1 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfProperty.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/types/ConnConfProperty.java
@@ -19,6 +19,7 @@
package org.apache.syncope.common.lib.types;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
@@ -26,11 +27,12 @@ import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.ObjectUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
@XmlRootElement
@XmlType
-public class ConnConfProperty extends AbstractBaseBean implements Comparable<ConnConfProperty> {
+public class ConnConfProperty implements Serializable, Comparable<ConnConfProperty> {
private static final long serialVersionUID = -8391413960221862238L;
@@ -67,4 +69,32 @@ public class ConnConfProperty extends AbstractBaseBean implements Comparable<Con
public int compareTo(final ConnConfProperty connConfProperty) {
return ObjectUtils.compare(this.getSchema(), connConfProperty.getSchema());
}
+
+ @Override
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(schema).
+ append(values).
+ append(overridable).
+ build();
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final ConnConfProperty other = (ConnConfProperty) obj;
+ return new EqualsBuilder().
+ append(schema, other.schema).
+ append(values, other.values).
+ append(overridable, other.overridable).
+ build();
+ }
}
diff --git a/common/lib/src/test/java/org/apache/syncope/common/lib/JAXBTest.java b/common/lib/src/test/java/org/apache/syncope/common/lib/JAXBTest.java
index 70d1479..3c4e87c 100644
--- a/common/lib/src/test/java/org/apache/syncope/common/lib/JAXBTest.java
+++ b/common/lib/src/test/java/org/apache/syncope/common/lib/JAXBTest.java
@@ -49,7 +49,7 @@ public class JAXBTest {
Marshaller marshaller = context.createMarshaller();
marshaller.marshal(new UserTO(), new StringWriter());
marshaller.marshal(new UserPatch(), new StringWriter());
- } catch (Exception e) {
+ } catch (JAXBException e) {
fail(ExceptionUtils.getStackTrace(e));
}
}
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/LoggerWrapper.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/LoggerWrapper.java
index 99f3f9c..b48fbb5 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/LoggerWrapper.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/LoggerWrapper.java
@@ -21,6 +21,7 @@ package org.apache.syncope.common.rest.api;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
+import java.util.stream.Collectors;
import org.apache.syncope.common.lib.log.LoggerTO;
import org.apache.syncope.common.lib.types.AuditLoggerName;
import org.apache.syncope.common.lib.types.LoggerLevel;
@@ -33,24 +34,22 @@ public final class LoggerWrapper {
public static List<AuditLoggerName> wrap(final Collection<LoggerTO> logger) {
List<AuditLoggerName> result = new ArrayList<>();
- for (LoggerTO loggerTO : logger) {
+ logger.forEach(loggerTO -> {
try {
result.add(AuditLoggerName.fromLoggerName(loggerTO.getKey()));
} catch (Exception ignore) {
// ignore
}
- }
+ });
return result;
}
public static List<LoggerTO> unwrap(final Collection<AuditLoggerName> auditNames) {
- List<LoggerTO> result = new ArrayList<>();
- for (AuditLoggerName name : auditNames) {
+ return auditNames.stream().map(name -> {
LoggerTO loggerTO = new LoggerTO();
loggerTO.setKey(name.toLoggerName());
loggerTO.setLevel(LoggerLevel.DEBUG);
- result.add(loggerTO);
- }
- return result;
+ return loggerTO;
+ }).collect(Collectors.toList());
}
}
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadLine.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadLine.java
index aa2cf41..3aa0503 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadLine.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadLine.java
@@ -42,12 +42,28 @@ public class BatchPayloadLine {
}
@Override
- public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
+ public int hashCode() {
+ return new HashCodeBuilder().
+ append(lineNumber).
+ append(content).
+ build();
}
@Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final BatchPayloadLine other = (BatchPayloadLine) obj;
+ return new EqualsBuilder().
+ append(lineNumber, other.lineNumber).
+ append(content, other.content).
+ build();
}
}
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/AbstractQuery.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/AbstractQuery.java
index 73d0bb3..771e560 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/AbstractQuery.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/AbstractQuery.java
@@ -18,13 +18,13 @@
*/
package org.apache.syncope.common.rest.api.beans;
+import java.io.Serializable;
import javax.validation.constraints.Min;
import javax.ws.rs.DefaultValue;
import javax.ws.rs.QueryParam;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.rest.api.service.JAXRSService;
-public abstract class AbstractQuery extends AbstractBaseBean {
+public abstract class AbstractQuery implements Serializable {
private static final long serialVersionUID = -371488230250055359L;
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ConnObjectTOListQuery.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ConnObjectTOListQuery.java
index 951c29d..17322ca 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ConnObjectTOListQuery.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ConnObjectTOListQuery.java
@@ -23,10 +23,6 @@ import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.ws.rs.DefaultValue;
import javax.ws.rs.QueryParam;
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
import org.apache.syncope.common.rest.api.service.JAXRSService;
public class ConnObjectTOListQuery implements Serializable {
@@ -99,19 +95,4 @@ public class ConnObjectTOListQuery implements Serializable {
public void setOrderBy(final String orderBy) {
this.orderBy = orderBy;
}
-
- @Override
- public boolean equals(final Object obj) {
- return EqualsBuilder.reflectionEquals(this, obj);
- }
-
- @Override
- public int hashCode() {
- return HashCodeBuilder.reflectionHashCode(this);
- }
-
- @Override
- public String toString() {
- return ReflectionToStringBuilder.toString(this, ToStringStyle.JSON_STYLE);
- }
}
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecDeleteQuery.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecDeleteQuery.java
index 680c926..664a705 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecDeleteQuery.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecDeleteQuery.java
@@ -18,13 +18,13 @@
*/
package org.apache.syncope.common.rest.api.beans;
+import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotNull;
import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
-import org.apache.syncope.common.lib.AbstractBaseBean;
-public class ExecDeleteQuery extends AbstractBaseBean {
+public class ExecDeleteQuery implements Serializable {
private static final long serialVersionUID = 3846547401120638351L;
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecuteQuery.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecuteQuery.java
index c1fe6ec..0a8504f 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecuteQuery.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/ExecuteQuery.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.rest.api.beans;
+import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotNull;
import javax.ws.rs.DefaultValue;
import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
-import org.apache.syncope.common.lib.AbstractBaseBean;
-public class ExecuteQuery extends AbstractBaseBean {
+public class ExecuteQuery implements Serializable {
private static final long serialVersionUID = 3846547401120638351L;
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/SchemaQuery.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/SchemaQuery.java
index 2c0805a..b7fd623 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/SchemaQuery.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/beans/SchemaQuery.java
@@ -18,6 +18,7 @@
*/
package org.apache.syncope.common.rest.api.beans;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -25,10 +26,9 @@ import java.util.List;
import javax.validation.constraints.NotNull;
import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.SchemaType;
-public class SchemaQuery extends AbstractBaseBean {
+public class SchemaQuery implements Serializable {
private static final long serialVersionUID = -1863334226169614417L;
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractExecutableLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractExecutableLogic.java
index a25325d..aa69180 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractExecutableLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractExecutableLogic.java
@@ -21,14 +21,14 @@ package org.apache.syncope.core.logic;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang3.tuple.Pair;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.ExecTO;
import org.apache.syncope.common.lib.to.JobTO;
import org.apache.syncope.common.lib.types.JobAction;
import org.apache.syncope.common.rest.api.batch.BatchResponseItem;
import org.apache.syncope.core.persistence.api.dao.search.OrderByClause;
-public abstract class AbstractExecutableLogic<T extends AbstractBaseBean> extends AbstractJobLogic<T> {
+public abstract class AbstractExecutableLogic<T extends EntityTO> extends AbstractJobLogic<T> {
public abstract ExecTO execute(String key, Date startAt, boolean dryRun);
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractJobLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractJobLogic.java
index 38bb876..416d6c1 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractJobLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractJobLogic.java
@@ -21,7 +21,7 @@ package org.apache.syncope.core.logic;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.tuple.Triple;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.JobTO;
import org.apache.syncope.common.lib.types.JobAction;
import org.apache.syncope.common.lib.types.JobType;
@@ -42,7 +42,7 @@ import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.quartz.SchedulerFactoryBean;
-abstract class AbstractJobLogic<T extends AbstractBaseBean> extends AbstractTransactionalLogic<T> {
+abstract class AbstractJobLogic<T extends EntityTO> extends AbstractTransactionalLogic<T> {
@Autowired
protected JobManager jobManager;
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractLogic.java
index 1706c99..ccd34ed 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractLogic.java
@@ -19,7 +19,7 @@
package org.apache.syncope.core.logic;
import java.lang.reflect.Method;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.transaction.annotation.Transactional;
@@ -29,7 +29,7 @@ import org.springframework.transaction.annotation.Transactional;
*
* @param <T> transfer object used for input / output
*/
-abstract class AbstractLogic<T extends AbstractBaseBean> {
+abstract class AbstractLogic<T extends EntityTO> {
protected static final Logger LOG = LoggerFactory.getLogger(AbstractLogic.class);
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractTransactionalLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractTransactionalLogic.java
index 08f2069..287312f 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractTransactionalLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/AbstractTransactionalLogic.java
@@ -18,7 +18,7 @@
*/
package org.apache.syncope.core.logic;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.springframework.transaction.annotation.Transactional;
/**
@@ -27,5 +27,5 @@ import org.springframework.transaction.annotation.Transactional;
* @param <T> transfer object used for input / output
*/
@Transactional(rollbackFor = { Throwable.class })
-abstract class AbstractTransactionalLogic<T extends AbstractBaseBean> extends AbstractLogic<T> {
+abstract class AbstractTransactionalLogic<T extends EntityTO> extends AbstractLogic<T> {
}
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/ConfigurationLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/ConfigurationLogic.java
index cc7a4bd..e0cf3d8 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/ConfigurationLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/ConfigurationLogic.java
@@ -23,6 +23,7 @@ import java.lang.reflect.Method;
import java.util.List;
import java.util.Optional;
import org.apache.syncope.common.lib.to.AttrTO;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.types.StandardEntitlement;
import org.apache.syncope.core.spring.security.AuthContextUtils;
import org.apache.syncope.core.persistence.api.content.ContentExporter;
@@ -41,7 +42,7 @@ import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
@Component
-public class ConfigurationLogic extends AbstractTransactionalLogic<AttrTO> {
+public class ConfigurationLogic extends AbstractTransactionalLogic<EntityTO> {
@Autowired
private ConfDAO confDAO;
@@ -125,7 +126,7 @@ public class ConfigurationLogic extends AbstractTransactionalLogic<AttrTO> {
}
@Override
- protected AttrTO resolveReference(final Method method, final Object... args)
+ protected EntityTO resolveReference(final Method method, final Object... args)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/LoggerLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/LoggerLogic.java
index 57e2007..c0f144a 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/LoggerLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/LoggerLogic.java
@@ -36,6 +36,7 @@ import org.apache.syncope.common.lib.log.EventCategory;
import org.apache.syncope.common.lib.log.LogAppender;
import org.apache.syncope.common.lib.log.LogStatement;
import org.apache.syncope.common.lib.log.LoggerTO;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.types.AuditElements.EventCategoryType;
import org.apache.syncope.common.lib.types.AuditLoggerName;
import org.apache.syncope.common.lib.types.ClientExceptionType;
@@ -72,7 +73,7 @@ import org.springframework.util.ClassUtils;
import org.springframework.util.SystemPropertyUtils;
@Component
-public class LoggerLogic extends AbstractTransactionalLogic<LoggerTO> {
+public class LoggerLogic extends AbstractTransactionalLogic<EntityTO> {
@Autowired
private LoggerLoader loggerLoader;
@@ -404,7 +405,7 @@ public class LoggerLogic extends AbstractTransactionalLogic<LoggerTO> {
}
@Override
- protected LoggerTO resolveReference(final Method method, final Object... args)
+ protected EntityTO resolveReference(final Method method, final Object... args)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/ReconciliationLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/ReconciliationLogic.java
index 34b1409..36c594b 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/ReconciliationLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/ReconciliationLogic.java
@@ -24,11 +24,11 @@ import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
import org.apache.commons.lang3.tuple.Pair;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.SyncopeClientException;
import org.apache.syncope.common.lib.collections.IteratorChain;
import org.apache.syncope.common.lib.to.AttrTO;
import org.apache.syncope.common.lib.to.ConnObjectTO;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.PullTaskTO;
import org.apache.syncope.common.lib.to.PushTaskTO;
import org.apache.syncope.common.lib.to.ReconStatus;
@@ -64,7 +64,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Component;
@Component
-public class ReconciliationLogic extends AbstractTransactionalLogic<AbstractBaseBean> {
+public class ReconciliationLogic extends AbstractTransactionalLogic<EntityTO> {
@Autowired
private AnyUtilsFactory anyUtilsFactory;
@@ -237,7 +237,7 @@ public class ReconciliationLogic extends AbstractTransactionalLogic<AbstractBase
}
@Override
- protected AbstractBaseBean resolveReference(final Method method, final Object... os)
+ protected EntityTO resolveReference(final Method method, final Object... os)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/core/logic/src/main/java/org/apache/syncope/core/logic/SyncopeLogic.java b/core/logic/src/main/java/org/apache/syncope/core/logic/SyncopeLogic.java
index 8aa7151..1c1a07f 100644
--- a/core/logic/src/main/java/org/apache/syncope/core/logic/SyncopeLogic.java
+++ b/core/logic/src/main/java/org/apache/syncope/core/logic/SyncopeLogic.java
@@ -35,12 +35,12 @@ import java.util.stream.Collectors;
import javax.annotation.Resource;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.tuple.Pair;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.SyncopeConstants;
import org.apache.syncope.common.lib.info.JavaImplInfo;
import org.apache.syncope.common.lib.info.NumbersInfo;
import org.apache.syncope.common.lib.info.SystemInfo;
import org.apache.syncope.common.lib.info.PlatformInfo;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.GroupTO;
import org.apache.syncope.common.lib.to.TypeExtensionTO;
import org.apache.syncope.common.lib.types.AnyTypeKind;
@@ -96,7 +96,7 @@ import org.springframework.transaction.annotation.Transactional;
@Transactional(readOnly = true)
@Component
-public class SyncopeLogic extends AbstractLogic<AbstractBaseBean> {
+public class SyncopeLogic extends AbstractLogic<EntityTO> {
private static final Object MONITOR = new Object();
@@ -424,10 +424,9 @@ public class SyncopeLogic extends AbstractLogic<AbstractBaseBean> {
}
@Override
- protected AbstractBaseBean resolveReference(final Method method, final Object... args)
+ protected EntityTO resolveReference(final Method method, final Object... args)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
}
-
}
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractPlainAttrValue.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractPlainAttrValue.java
index 39e382a..988ef58 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractPlainAttrValue.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractPlainAttrValue.java
@@ -26,8 +26,7 @@ import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
+import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.syncope.common.lib.types.AttrSchemaType;
import org.apache.syncope.core.provisioning.api.utils.FormatUtils;
import org.apache.syncope.core.persistence.api.attrvalue.validation.ParsingValidationException;
@@ -276,6 +275,14 @@ public abstract class AbstractPlainAttrValue extends AbstractGeneratedKeyEntity
@Override
public String toString() {
- return ReflectionToStringBuilder.toString(this, ToStringStyle.JSON_STYLE);
+ return new ToStringBuilder(this).
+ append(getKey()).
+ append(stringValue).
+ append(dateValue).
+ append(booleanValue).
+ append(longValue).
+ append(doubleValue).
+ append(binaryValue).
+ build();
}
}
diff --git a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ProvisioningReport.java b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ProvisioningReport.java
index 8e6903e..4f47eda 100644
--- a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ProvisioningReport.java
+++ b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ProvisioningReport.java
@@ -20,8 +20,7 @@ package org.apache.syncope.core.provisioning.api.pushpull;
import java.util.Collection;
import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
+import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.syncope.common.lib.types.ResourceOperation;
import org.apache.syncope.common.lib.types.TraceLevel;
@@ -107,7 +106,15 @@ public class ProvisioningReport {
@Override
public String toString() {
- return new ReflectionToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE).toString();
+ return new ToStringBuilder(this).
+ append(message).
+ append(status).
+ append(anyType).
+ append(operation).
+ append(key).
+ append(name).
+ append(uidValue).
+ build();
}
/**
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AuditEntry.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AuditEntry.java
index 8d56f53..a462107 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AuditEntry.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AuditEntry.java
@@ -20,13 +20,13 @@ package org.apache.syncope.core.provisioning.java;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.SerializationUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.to.UserTO;
import org.apache.syncope.common.lib.types.AuditLoggerName;
-public class AuditEntry extends AbstractBaseBean {
+public class AuditEntry implements Serializable {
private static final long serialVersionUID = -2299082316063743582L;
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractServiceImpl.java
index 2e9a0c0..6f83b11 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractServiceImpl.java
@@ -18,10 +18,10 @@
*/
package org.apache.syncope.core.rest.cxf.service;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
-import java.util.Map;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.EntityTag;
import javax.ws.rs.core.MultivaluedMap;
@@ -35,7 +35,6 @@ import org.apache.cxf.jaxrs.ext.MessageContext;
import org.apache.cxf.jaxrs.ext.search.SearchBean;
import org.apache.cxf.jaxrs.ext.search.SearchCondition;
import org.apache.cxf.jaxrs.ext.search.SearchContext;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.SyncopeClientException;
import org.apache.syncope.common.lib.SyncopeConstants;
import org.apache.syncope.common.lib.to.PagedResult;
@@ -217,7 +216,7 @@ abstract class AbstractServiceImpl implements JAXRSService {
* @param totalCount total result size (not considering pagination)
* @return paged result
*/
- protected <T extends AbstractBaseBean> PagedResult<T> buildPagedResult(
+ protected <T extends Serializable> PagedResult<T> buildPagedResult(
final List<T> list, final int page, final int size, final int totalCount) {
PagedResult<T> result = new PagedResult<>();
@@ -229,9 +228,9 @@ abstract class AbstractServiceImpl implements JAXRSService {
UriBuilder builder = uriInfo.getAbsolutePathBuilder();
MultivaluedMap<String, String> queryParams = uriInfo.getQueryParameters();
- for (Map.Entry<String, List<String>> queryParam : queryParams.entrySet()) {
- builder.queryParam(queryParam.getKey(), queryParam.getValue().toArray());
- }
+ queryParams.forEach((key, value) -> {
+ builder.queryParam(key, value.toArray());
+ });
if (result.getPage() > 1) {
result.setPrev(builder.
diff --git a/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelMetrics.java b/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelMetrics.java
index 050c63c..6e11884 100644
--- a/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelMetrics.java
+++ b/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelMetrics.java
@@ -19,23 +19,23 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "camelMetrics")
@XmlType
-public class CamelMetrics extends AbstractBaseBean {
+public class CamelMetrics implements Serializable {
private static final long serialVersionUID = -391404198406614231L;
@XmlRootElement(name = "meanRate")
@XmlType
- public static class MeanRate extends AbstractBaseBean {
+ public static class MeanRate implements Serializable {
private static final long serialVersionUID = -233921226510124154L;
diff --git a/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelRouteTO.java b/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelRouteTO.java
index 2425450..086db7f 100644
--- a/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelRouteTO.java
+++ b/ext/camel/common-lib/src/main/java/org/apache/syncope/common/lib/to/CamelRouteTO.java
@@ -21,12 +21,11 @@ package org.apache.syncope.common.lib.to;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.AnyTypeKind;
@XmlRootElement(name = "camelRoute")
@XmlType
-public class CamelRouteTO extends AbstractBaseBean implements EntityTO {
+public class CamelRouteTO implements EntityTO {
private static final long serialVersionUID = 6431992877435181674L;
diff --git a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/BpmnProcess.java b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/BpmnProcess.java
index 35a7883..d1e150d 100644
--- a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/BpmnProcess.java
+++ b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/BpmnProcess.java
@@ -20,11 +20,10 @@ package org.apache.syncope.common.lib.to;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "bpmnProcess")
@XmlType
-public class BpmnProcess extends AbstractBaseBean implements EntityTO {
+public class BpmnProcess implements EntityTO {
private static final long serialVersionUID = -7044543391316529128L;
diff --git a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequest.java b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequest.java
index 9b65845..b3fbe23 100644
--- a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequest.java
+++ b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequest.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import java.util.Date;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "userRequest")
@XmlType
-public class UserRequest extends AbstractBaseBean {
+public class UserRequest implements Serializable {
private static final long serialVersionUID = -8430826310789942133L;
diff --git a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestForm.java b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestForm.java
index 22118b5..6e17e79 100644
--- a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestForm.java
+++ b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestForm.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -28,12 +29,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.patch.UserPatch;
@XmlRootElement(name = "userRequestForm")
@XmlType
-public class UserRequestForm extends AbstractBaseBean {
+public class UserRequestForm implements Serializable {
private static final long serialVersionUID = -7044543391316529128L;
diff --git a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestFormProperty.java b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestFormProperty.java
index 95f2fec..eca017f 100644
--- a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestFormProperty.java
+++ b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/UserRequestFormProperty.java
@@ -19,18 +19,18 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
import org.apache.syncope.common.lib.types.UserRequestFormPropertyType;
@XmlRootElement(name = "userRequestFormProperty")
@XmlType
-public class UserRequestFormProperty extends AbstractBaseBean {
+public class UserRequestFormProperty implements Serializable {
private static final long serialVersionUID = 9139969592634304261L;
diff --git a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTask.java b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTask.java
index 6b712ab..8437bdf 100644
--- a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTask.java
+++ b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTask.java
@@ -18,13 +18,13 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "workflowTask")
@XmlType
-public class WorkflowTask extends AbstractBaseBean {
+public class WorkflowTask implements Serializable {
private static final long serialVersionUID = -3095016727396210808L;
diff --git a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTaskExecInput.java b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTaskExecInput.java
index 0a7e2be..4018d24 100644
--- a/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTaskExecInput.java
+++ b/ext/flowable/common-lib/src/main/java/org/apache/syncope/common/lib/to/WorkflowTaskExecInput.java
@@ -19,18 +19,18 @@
package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import javax.ws.rs.PathParam;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.jaxb.XmlGenericMapAdapter;
@XmlRootElement(name = "workflowTaskExecInput")
@XmlType
-public class WorkflowTaskExecInput extends AbstractBaseBean {
+public class WorkflowTaskExecInput implements Serializable {
private static final long serialVersionUID = 8060283119070901756L;
diff --git a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java
index 686677e..edff188 100644
--- a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java
+++ b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java
@@ -24,6 +24,7 @@ import org.apache.commons.io.output.NullOutputStream;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.syncope.common.lib.SyncopeClientException;
import org.apache.syncope.common.lib.patch.UserPatch;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.PropagationTaskTO;
import org.apache.syncope.common.lib.to.UserRequest;
import org.apache.syncope.common.lib.to.UserTO;
@@ -49,7 +50,7 @@ import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
@Component
-public class UserRequestLogic extends AbstractTransactionalLogic<UserRequestForm> {
+public class UserRequestLogic extends AbstractTransactionalLogic<EntityTO> {
@Autowired
protected BpmnProcessManager bpmnProcessManager;
@@ -205,7 +206,7 @@ public class UserRequestLogic extends AbstractTransactionalLogic<UserRequestForm
}
@Override
- protected UserRequestForm resolveReference(final Method method, final Object... args)
+ protected EntityTO resolveReference(final Method method, final Object... args)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java
index 8d73fae..76d4ad9 100644
--- a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java
+++ b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java
@@ -22,9 +22,9 @@ import java.lang.reflect.Method;
import java.util.List;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.syncope.common.lib.patch.UserPatch;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.PropagationTaskTO;
import org.apache.syncope.common.lib.to.UserTO;
-import org.apache.syncope.common.lib.to.UserRequestForm;
import org.apache.syncope.common.lib.to.WorkflowTask;
import org.apache.syncope.common.lib.to.WorkflowTaskExecInput;
import org.apache.syncope.common.lib.types.FlowableEntitlement;
@@ -41,7 +41,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Component;
@Component
-public class UserWorkflowTaskLogic extends AbstractTransactionalLogic<UserRequestForm> {
+public class UserWorkflowTaskLogic extends AbstractTransactionalLogic<EntityTO> {
@Autowired
private WorkflowTaskManager wfTaskManager;
@@ -83,7 +83,7 @@ public class UserWorkflowTaskLogic extends AbstractTransactionalLogic<UserReques
}
@Override
- protected UserRequestForm resolveReference(final Method method, final Object... args)
+ protected EntityTO resolveReference(final Method method, final Object... args)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginRequestTO.java b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginRequestTO.java
index 5d4dc31..8186d76 100644
--- a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginRequestTO.java
+++ b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginRequestTO.java
@@ -18,13 +18,13 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "oidcLoginRequest")
@XmlType
-public class OIDCLoginRequestTO extends AbstractBaseBean {
+public class OIDCLoginRequestTO implements Serializable {
private static final long serialVersionUID = -3509031322459942441L;
diff --git a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginResponseTO.java b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginResponseTO.java
index 78e4dd6..c767292 100644
--- a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginResponseTO.java
+++ b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLoginResponseTO.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
import java.util.Optional;
@@ -28,11 +29,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "oidcLoginResponse")
@XmlType
-public class OIDCLoginResponseTO extends AbstractBaseBean {
+public class OIDCLoginResponseTO implements Serializable {
private static final long serialVersionUID = -5971442076182154492L;
diff --git a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLogoutRequestTO.java b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLogoutRequestTO.java
index 80d83a1..611cdca 100644
--- a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLogoutRequestTO.java
+++ b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCLogoutRequestTO.java
@@ -18,13 +18,13 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "oidcLogoutRequest")
@XmlType
-public class OIDCLogoutRequestTO extends AbstractBaseBean {
+public class OIDCLogoutRequestTO implements Serializable {
private static final long serialVersionUID = -4708360216757961537L;
@@ -37,5 +37,4 @@ public class OIDCLogoutRequestTO extends AbstractBaseBean {
public void setEndSessionEndpoint(final String endSessionEndpoint) {
this.endSessionEndpoint = endSessionEndpoint;
}
-
}
diff --git a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCProviderTO.java b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCProviderTO.java
index 7a3545f..60ecf41 100644
--- a/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCProviderTO.java
+++ b/ext/oidcclient/common-lib/src/main/java/org/apache/syncope/common/lib/to/OIDCProviderTO.java
@@ -28,11 +28,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "oidcprovider")
@XmlType
-public class OIDCProviderTO extends AbstractBaseBean implements EntityTO, ItemContainerTO {
+public class OIDCProviderTO implements EntityTO, ItemContainerTO {
private static final long serialVersionUID = -1229802774546135794L;
diff --git a/ext/oidcclient/logic/src/main/java/org/apache/syncope/core/logic/OIDCClientLogic.java b/ext/oidcclient/logic/src/main/java/org/apache/syncope/core/logic/OIDCClientLogic.java
index 5141c6f..9c9acbf 100644
--- a/ext/oidcclient/logic/src/main/java/org/apache/syncope/core/logic/OIDCClientLogic.java
+++ b/ext/oidcclient/logic/src/main/java/org/apache/syncope/core/logic/OIDCClientLogic.java
@@ -44,9 +44,9 @@ import org.apache.cxf.rs.security.oidc.common.IdToken;
import org.apache.cxf.rs.security.oidc.common.UserInfo;
import org.apache.cxf.rs.security.oidc.rp.IdTokenReader;
import org.apache.cxf.rs.security.oidc.rp.UserInfoClient;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.SyncopeClientException;
import org.apache.syncope.common.lib.to.AttrTO;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.OIDCLoginRequestTO;
import org.apache.syncope.common.lib.to.OIDCLoginResponseTO;
import org.apache.syncope.common.lib.to.OIDCLogoutRequestTO;
@@ -71,7 +71,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Component;
@Component
-public class OIDCClientLogic extends AbstractTransactionalLogic<AbstractBaseBean> {
+public class OIDCClientLogic extends AbstractTransactionalLogic<EntityTO> {
private static final String JWT_CLAIM_OP_ENTITYID = "OP_ENTITYID";
@@ -437,7 +437,7 @@ public class OIDCClientLogic extends AbstractTransactionalLogic<AbstractBaseBean
}
@Override
- protected AbstractBaseBean resolveReference(
+ protected EntityTO resolveReference(
final Method method, final Object... args) throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2IdPTO.java b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2IdPTO.java
index 609f012..76b3259 100644
--- a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2IdPTO.java
+++ b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2IdPTO.java
@@ -26,12 +26,11 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.SAML2BindingType;
@XmlRootElement(name = "saml2idp")
@XmlType
-public class SAML2IdPTO extends AbstractBaseBean implements EntityTO, ItemContainerTO {
+public class SAML2IdPTO implements EntityTO, ItemContainerTO {
private static final long serialVersionUID = 4426527052873779881L;
diff --git a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2LoginResponseTO.java b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2LoginResponseTO.java
index 177a3e5..b676257 100644
--- a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2LoginResponseTO.java
+++ b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2LoginResponseTO.java
@@ -20,6 +20,7 @@ package org.apache.syncope.common.lib.to;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
import java.util.Optional;
@@ -28,11 +29,10 @@ import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "saml2LoginResponse")
@XmlType
-public class SAML2LoginResponseTO extends AbstractBaseBean {
+public class SAML2LoginResponseTO implements Serializable {
private static final long serialVersionUID = 794772343787258010L;
diff --git a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2ReceivedResponseTO.java b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2ReceivedResponseTO.java
index 556be9b..466ac8b 100644
--- a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2ReceivedResponseTO.java
+++ b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2ReceivedResponseTO.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
-import org.apache.syncope.common.lib.AbstractBaseBean;
@XmlRootElement(name = "saml2ReceivedResponse")
@XmlType
-public class SAML2ReceivedResponseTO extends AbstractBaseBean {
+public class SAML2ReceivedResponseTO implements Serializable {
private static final long serialVersionUID = 6102419133516694822L;
diff --git a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2RequestTO.java b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2RequestTO.java
index 143a1b3..a360181 100644
--- a/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2RequestTO.java
+++ b/ext/saml2sp/common-lib/src/main/java/org/apache/syncope/common/lib/to/SAML2RequestTO.java
@@ -18,14 +18,14 @@
*/
package org.apache.syncope.common.lib.to;
+import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.types.SAML2BindingType;
@XmlRootElement(name = "saml2request")
@XmlType
-public class SAML2RequestTO extends AbstractBaseBean {
+public class SAML2RequestTO implements Serializable {
private static final long serialVersionUID = -2454209295007372086L;
diff --git a/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/AbstractSAML2Logic.java b/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/AbstractSAML2Logic.java
index 01c04ea..221cc44 100644
--- a/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/AbstractSAML2Logic.java
+++ b/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/AbstractSAML2Logic.java
@@ -18,11 +18,11 @@
*/
package org.apache.syncope.core.logic;
-import org.apache.syncope.common.lib.AbstractBaseBean;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.core.logic.init.SAML2SPLoader;
import org.springframework.beans.factory.annotation.Autowired;
-public abstract class AbstractSAML2Logic<T extends AbstractBaseBean> extends AbstractTransactionalLogic<T> {
+public abstract class AbstractSAML2Logic<T extends EntityTO> extends AbstractTransactionalLogic<T> {
@Autowired
protected SAML2SPLoader loader;
diff --git a/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java b/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
index b660b27..f5e6ce1 100644
--- a/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
+++ b/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
@@ -34,9 +34,9 @@ import org.apache.commons.lang3.tuple.Pair;
import org.apache.cxf.rs.security.jose.jws.JwsJwtCompactConsumer;
import org.apache.cxf.rs.security.jose.jws.JwsSignatureVerifier;
import org.apache.cxf.rs.security.saml.sso.SSOValidatorResponse;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.SyncopeClientException;
import org.apache.syncope.common.lib.to.AttrTO;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.SAML2RequestTO;
import org.apache.syncope.common.lib.to.SAML2LoginResponseTO;
import org.apache.syncope.common.lib.to.SAML2ReceivedResponseTO;
@@ -108,7 +108,7 @@ import org.springframework.beans.factory.support.AbstractBeanDefinition;
import org.springframework.util.ResourceUtils;
@Component
-public class SAML2SPLogic extends AbstractSAML2Logic<AbstractBaseBean> {
+public class SAML2SPLogic extends AbstractSAML2Logic<EntityTO> {
private static final String IDP_INITIATED_RELAY_STATE = "idpInitiated";
@@ -700,7 +700,7 @@ public class SAML2SPLogic extends AbstractSAML2Logic<AbstractBaseBean> {
}
@Override
- protected AbstractBaseBean resolveReference(
+ protected EntityTO resolveReference(
final Method method, final Object... args) throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
diff --git a/ext/scimv2/logic/src/main/java/org/apache/syncope/core/logic/SCIMLogic.java b/ext/scimv2/logic/src/main/java/org/apache/syncope/core/logic/SCIMLogic.java
index f09bdeb..8ddfcf7 100644
--- a/ext/scimv2/logic/src/main/java/org/apache/syncope/core/logic/SCIMLogic.java
+++ b/ext/scimv2/logic/src/main/java/org/apache/syncope/core/logic/SCIMLogic.java
@@ -29,8 +29,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ws.rs.core.UriBuilder;
-import org.apache.syncope.common.lib.AbstractBaseBean;
import org.apache.syncope.common.lib.scim.SCIMConf;
+import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.core.logic.scim.SCIMConfManager;
import org.apache.syncope.core.persistence.api.dao.NotFoundException;
import org.apache.syncope.ext.scimv2.api.data.AuthenticationScheme;
@@ -47,7 +47,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Component;
@Component
-public class SCIMLogic extends AbstractLogic<AbstractBaseBean> {
+public class SCIMLogic extends AbstractLogic<EntityTO> {
private static final String SCHEMAS_JSON = "schemas.json";
@@ -191,10 +191,9 @@ public class SCIMLogic extends AbstractLogic<AbstractBaseBean> {
}
@Override
- protected AbstractBaseBean resolveReference(final Method method, final Object... args)
+ protected EntityTO resolveReference(final Method method, final Object... args)
throws UnresolvedReferenceException {
throw new UnresolvedReferenceException();
}
-
}