[UPDATE]
- adds @JsonIdentityInfo annotations for export - implements IdGenerators and IdResolvers for the use of @JsonIdentityInfo git-svn-id: https://svn.libreccm.org/ccm/trunk@4632 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
ad7c872d3a
commit
d61efd3d30
|
|
@ -23,6 +23,7 @@ import com.arsdigita.portation.AbstractMarshaller;
|
|||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.core.CcmObject;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
|
||||
/**
|
||||
|
|
@ -33,6 +34,8 @@ import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = CategorizationIdGenerator.class,
|
||||
property = "customCatId")
|
||||
public class Categorization implements Portable {
|
||||
|
||||
private long categorizationId;
|
||||
|
|
|
|||
|
|
@ -25,9 +25,10 @@ import com.arsdigita.portation.Portable;
|
|||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.core.CcmObject;
|
||||
import com.arsdigita.portation.modules.core.l10n.LocalizedString;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
|
@ -45,6 +46,9 @@ import java.util.Locale;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = CategoryIdResolver.class,
|
||||
property = "uuid")
|
||||
public class Category extends CcmObject implements Portable {
|
||||
|
||||
private String uniqueId;
|
||||
|
|
|
|||
|
|
@ -23,7 +23,9 @@ import com.arsdigita.portation.conversion.NgCollection;
|
|||
import com.arsdigita.portation.modules.core.categorization.Categorization;
|
||||
import com.arsdigita.portation.modules.core.categorization.Category;
|
||||
import com.arsdigita.portation.modules.core.security.Permission;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
|
@ -46,6 +48,9 @@ import java.util.UUID;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = CcmObjectIdResolver.class,
|
||||
property = "uuid")
|
||||
public class CcmObject {
|
||||
|
||||
private long objectId;
|
||||
|
|
|
|||
|
|
@ -21,7 +21,9 @@ package com.arsdigita.portation.modules.core.security;
|
|||
import com.arsdigita.portation.AbstractMarshaller;
|
||||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
|
@ -30,6 +32,9 @@ import java.util.Set;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 31.05.16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = GroupIdResolver.class,
|
||||
property = "name")
|
||||
public class Group extends Party implements Portable {
|
||||
|
||||
@JsonIgnore
|
||||
|
|
|
|||
|
|
@ -22,12 +22,15 @@ import com.arsdigita.kernel.ACSObject;
|
|||
import com.arsdigita.portation.AbstractMarshaller;
|
||||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
|
||||
/**
|
||||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = GroupMembershipIdGenerator.class,
|
||||
property = "customMemId")
|
||||
public class GroupMembership implements Portable {
|
||||
|
||||
private long membershipId;
|
||||
|
|
|
|||
|
|
@ -19,7 +19,9 @@
|
|||
package com.arsdigita.portation.modules.core.security;
|
||||
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
|
@ -28,6 +30,9 @@ import java.util.Set;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 01.06.16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = PartyIdResolver.class,
|
||||
property = "name")
|
||||
public class Party {
|
||||
|
||||
private long partyId;
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ import com.arsdigita.portation.Portable;
|
|||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.core.CcmObject;
|
||||
import com.arsdigita.portation.modules.core.security.util.PermissionIdMapper;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
|
@ -33,6 +34,9 @@ import java.util.Date;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = PermissionIdGenerator.class,
|
||||
resolver = PermissionIdResolver.class,
|
||||
property = "customPermId")
|
||||
public class Permission implements Portable {
|
||||
|
||||
private long permissionId;
|
||||
|
|
|
|||
|
|
@ -23,7 +23,9 @@ import com.arsdigita.portation.Portable;
|
|||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.l10n.LocalizedString;
|
||||
import com.arsdigita.portation.modules.core.workflow.TaskAssignment;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
|
|
@ -35,6 +37,9 @@ import java.util.Set;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = RoleIdResolver.class,
|
||||
property = "name")
|
||||
public class Role implements Portable {
|
||||
|
||||
private long roleId;
|
||||
|
|
|
|||
|
|
@ -22,12 +22,15 @@ import com.arsdigita.kernel.ACSObject;
|
|||
import com.arsdigita.portation.AbstractMarshaller;
|
||||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
|
||||
/**
|
||||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = RoleMembershipIdGenerator.class,
|
||||
property = "customMemId")
|
||||
public class RoleMembership implements Portable {
|
||||
|
||||
private long membershipId;
|
||||
|
|
|
|||
|
|
@ -22,8 +22,9 @@ import com.arsdigita.portation.AbstractMarshaller;
|
|||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.core.EmailAddress;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
|
|
@ -35,7 +36,9 @@ import java.util.Set;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 31.05.16
|
||||
*/
|
||||
@JsonIgnoreProperties(ignoreUnknown=true)
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = UserIdResolver.class,
|
||||
property = "name")
|
||||
public class User extends Party implements Portable {
|
||||
|
||||
private String givenName;
|
||||
|
|
|
|||
|
|
@ -22,7 +22,9 @@ import com.arsdigita.portation.AbstractMarshaller;
|
|||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.security.User;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
|
|
@ -32,6 +34,9 @@ import java.util.List;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = AssignableTaskIdResolver.class,
|
||||
property = "uuid")
|
||||
public class AssignableTask extends Task implements Portable {
|
||||
|
||||
private boolean locked;
|
||||
|
|
|
|||
|
|
@ -21,8 +21,10 @@ package com.arsdigita.portation.modules.core.workflow;
|
|||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.l10n.LocalizedString;
|
||||
import com.arsdigita.portation.modules.core.workflow.util.StateMapper;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
|
@ -33,6 +35,9 @@ import java.util.UUID;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = TaskIdResolver.class,
|
||||
property = "uuid")
|
||||
public class Task {
|
||||
|
||||
private long taskId;
|
||||
|
|
|
|||
|
|
@ -23,12 +23,15 @@ import com.arsdigita.portation.AbstractMarshaller;
|
|||
import com.arsdigita.portation.Portable;
|
||||
import com.arsdigita.portation.conversion.NgCollection;
|
||||
import com.arsdigita.portation.modules.core.security.Role;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityReference;
|
||||
|
||||
/**
|
||||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = TaskAssignmentIdGenerator.class,
|
||||
property = "customAssignId")
|
||||
public class TaskAssignment implements Portable {
|
||||
|
||||
private long taskAssignmentId;
|
||||
|
|
|
|||
|
|
@ -24,7 +24,9 @@ import com.arsdigita.portation.conversion.NgCollection;
|
|||
import com.arsdigita.portation.modules.core.core.CcmObject;
|
||||
import com.arsdigita.portation.modules.core.l10n.LocalizedString;
|
||||
import com.arsdigita.portation.modules.core.workflow.util.StateMapper;
|
||||
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
|
@ -35,6 +37,9 @@ import java.util.UUID;
|
|||
* @author <a href="mailto:tosmers@uni-bremen.de>Tobias Osmers<\a>
|
||||
* @version created on 6/15/16
|
||||
*/
|
||||
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class,
|
||||
resolver = WorkflowIdResolver.class,
|
||||
property = "uuid")
|
||||
public class Workflow implements Portable {
|
||||
|
||||
private long workflowId;
|
||||
|
|
|
|||
Loading…
Reference in New Issue