1 /* 2 * Copyright 2008 Members of the EGEE Collaboration. 3 * Copyright 2008 University Corporation for Advanced Internet Development, Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 package org.opensaml.xacml.policy; 19 20 21 import javax.xml.namespace.QName; 22 23 import org.opensaml.xacml.XACMLConstants; 24 import org.opensaml.xacml.XACMLObject; 25 26 /** XACML Target schema type. */ 27 public interface TargetType extends XACMLObject { 28 29 /** Local name of the element Target. */ 30 public static final String DEFAULT_ELEMENT_LOCAL_NAME = "Target"; 31 32 /** QName of the element Target. */ 33 public static final QName DEFAULT_ELEMENT_NAME = new QName(XACMLConstants.XACML20_NS, DEFAULT_ELEMENT_LOCAL_NAME, 34 XACMLConstants.XACML_PREFIX); 35 36 /** Local name of the XSI type. */ 37 public static final String SCHEMA_TYPE_LOCAL_NAME = "TargetType"; 38 39 /** QName of the XSI type. */ 40 public static final QName SCHEMA_TYPE_NAME = new QName(XACMLConstants.XACML20_NS, SCHEMA_TYPE_LOCAL_NAME, 41 XACMLConstants.XACML_PREFIX); 42 43 /** 44 * Gets the subjects of this target. 45 * 46 * @return subjects of this target 47 */ 48 public SubjectsType getSubjects(); 49 50 /** 51 * Gets the resources of this target. 52 * 53 * @return resources of this target 54 */ 55 public ResourcesType getResources(); 56 57 /** 58 * Gets the actions of this target. 59 * 60 * @return actions of this target 61 */ 62 public ActionsType getActions(); 63 64 /** 65 * Gets the environments of this target. 66 * 67 * @return environments of this target 68 */ 69 public EnvironmentsType getEnvironments(); 70 71 /** 72 * Sets the subjects in the target. 73 * @param subjects the subject in the target 74 */ 75 public void setSubjects(SubjectsType subjects); 76 77 /** 78 * Sets the actions in the target. 79 * @param actions the subject in the target 80 */ 81 public void setActions(ActionsType actions); 82 83 /** 84 * Sets the resources in the target. 85 * @param resources the subject in the target 86 */ 87 public void setResources(ResourcesType resources); 88 89 /** 90 * Sets the environments in the target. 91 * @param environments the subject in the target 92 */ 93 public void setEnvironments(EnvironmentsType environments); 94 }