View Javadoc

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  }