/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.geofence.gui.client; import java.util.Iterator; import java.util.List; import org.geoserver.geofence.gui.client.model.GSInstanceModel; import org.geoserver.geofence.gui.client.model.GSUserModel; import org.geoserver.geofence.gui.client.model.UserGroupModel; import org.geoserver.geofence.gui.client.model.RuleModel; public class Constants { public final static int DEFAULT_PAGESIZE = 25; public static final int NORTH_PANEL_DIMENSION = 30; public static final int SOUTH_PANEL_DIMENSION = 400; public static final int EASTH_PANEL_DIMENSION = 250; public static final int WEST_PANEL_DIMENSION = 0; public static Constants instance = new Constants(); public static Constants getInstance() { return instance; } /** * Creates the new rule. * * @param model * the model * @return the rule */ public RuleModel createNewRule(RuleModel model) { RuleModel new_rule = new RuleModel(); new_rule.setId(-1); if (model == null) { new_rule.setPriority(0); } else { new_rule.setPriority(model.getPriority() + 1); } new_rule.setUsername("*"); new_rule.setRolename("*"); GSInstanceModel all_instance = new GSInstanceModel(); all_instance.setId(-1); all_instance.setName("*"); all_instance.setBaseURL("*"); // new_rule.setInstance(all_instance); new_rule.setGrant("ALLOW"); new_rule.setService("*"); new_rule.setLayer("*"); new_rule.setRequest("*"); new_rule.setWorkspace("*"); return new_rule; } /** * gsuser_id, profile_id, instance_id, service, request, workspace, layer * * @param list * @param rule * @return */ public boolean checkUniqueRule(List<RuleModel> list, RuleModel rule) { boolean res = false; if (list.size() > 0) { Iterator itr = list.iterator(); while (itr.hasNext() && !res) { RuleModel r = (RuleModel) itr.next(); if (((r.getUsername()!= null && rule.getUsername()!= null && r.getUsername().equals(rule.getUsername())) || (r.getUsername()== null && rule.getUsername()== null)) && (r.getRolename() != null && rule.getRolename() != null && r.getRolename().equals(rule.getRolename()) || (r.getRolename() == null && rule.getRolename() == null)) && (r.getInstance() != null && rule.getInstance() != null && r.getInstance().getName().equals(rule.getInstance().getName()) || (r .getInstance() == null && rule.getInstance() == null)) && (r.getService() != null && rule.getService() != null && r.getService().equals(rule.getService()) || (r.getService() == null && rule .getService() == null)) && (r.getRequest() != null && rule.getRequest() != null && r.getRequest().equals(rule.getRequest()) || (r.getRequest() == null && rule .getRequest() == null)) && (r.getWorkspace() != null && rule.getWorkspace() != null && r.getWorkspace().equals(rule.getWorkspace()) || (r .getWorkspace() == null && rule.getWorkspace() == null)) && (r.getLayer() != null && rule.getLayer() != null && r.getLayer().equals(rule.getLayer()) || (r.getLayer() == null && rule .getLayer() == null))) { res = true; } } } return res; } }