001 /* 002 * Copyright 2011 The Kuali Foundation. 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.kfs.sec.businessobject; 017 018 import java.util.LinkedHashMap; 019 020 import org.kuali.kfs.sec.SecPropertyConstants; 021 import org.kuali.rice.kns.bo.TransientBusinessObjectBase; 022 023 024 /** 025 * Holds fields that provide metadata information for a security attribute 026 */ 027 public class SecurityAttributeMetadata extends TransientBusinessObjectBase { 028 private Class attributeClass; 029 private String attributeField; 030 private String attributeNameField; 031 032 public SecurityAttributeMetadata() { 033 } 034 035 public SecurityAttributeMetadata(Class attributeClass, String attributeField) { 036 this.attributeClass = attributeClass; 037 this.attributeField = attributeField; 038 } 039 040 public SecurityAttributeMetadata(Class attributeClass, String attributeField, String attributeNameField) { 041 this.attributeClass = attributeClass; 042 this.attributeField = attributeField; 043 this.attributeNameField = attributeNameField; 044 } 045 046 /** 047 * Gets the attributeClass attribute. 048 * 049 * @return Returns the attributeClass. 050 */ 051 public Class getAttributeClass() { 052 return attributeClass; 053 } 054 055 056 /** 057 * Sets the attributeClass attribute value. 058 * 059 * @param attributeClass The attributeClass to set. 060 */ 061 public void setAttributeClass(Class attributeClass) { 062 this.attributeClass = attributeClass; 063 } 064 065 066 /** 067 * Gets the attributeField attribute. 068 * 069 * @return Returns the attributeField. 070 */ 071 public String getAttributeField() { 072 return attributeField; 073 } 074 075 076 /** 077 * Sets the attributeField attribute value. 078 * 079 * @param attributeField The attributeField to set. 080 */ 081 public void setAttributeField(String attributeField) { 082 this.attributeField = attributeField; 083 } 084 085 086 /** 087 * Gets the attributeNameField attribute. 088 * 089 * @return Returns the attributeNameField. 090 */ 091 public String getAttributeNameField() { 092 return attributeNameField; 093 } 094 095 /** 096 * Sets the attributeNameField attribute value. 097 * 098 * @param attributeNameField The attributeNameField to set. 099 */ 100 public void setAttributeNameField(String attributeNameField) { 101 this.attributeNameField = attributeNameField; 102 } 103 104 @Override 105 protected LinkedHashMap toStringMapper() { 106 LinkedHashMap m = new LinkedHashMap(); 107 108 m.put(SecPropertyConstants.ATTRIBUTE_ID, this.attributeField); 109 110 return m; 111 } 112 113 }