gcube-cms-suite/geoportal-common/src/main/java/org/gcube/application/geoportal/common/model/profile/DataAccessPolicy.java

52 lines
1.0 KiB
Java

package org.gcube.application.geoportal.common.model.profile;
import lombok.*;
import org.bson.Document;
import java.util.List;
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString
public class DataAccessPolicy {
public static final String POLICY = "policy";
public static final String ROLES = "roles";
public static final String ENFORCER = "enforcer";
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString
public static class Policy {
public static final String WRITE="write";
public static final String READ="read";
public static enum Type{
OWN,NONE,ANY
}
private Type write;
private Type read;
}
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString
public static class PolicyEnforcer {
public static final String FILTER="filter";
private Document filter;
}
private Policy policy;
private List<String> roles;
private PolicyEnforcer enforcer;
}