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.sys.businessobject;
017
018 import java.util.LinkedHashMap;
019
020 import org.kuali.rice.kns.bo.TransientBusinessObjectBase;
021 import org.kuali.rice.kns.datadictionary.AttributeDefinition;
022
023 public class BusinessObjectProperty extends TransientBusinessObjectBase {
024 private String namespaceCode;
025 private String componentClass;
026 private String propertyName;
027 private String propertyLabel;
028
029 private BusinessObjectComponent businessObjectComponent;
030
031 public BusinessObjectProperty() {
032 }
033
034 public BusinessObjectProperty(BusinessObjectComponent businessObjectComponent, AttributeDefinition attributeDefinition) {
035 setBusinessObjectComponent(businessObjectComponent);
036 setNamespaceCode(businessObjectComponent.getNamespaceCode());
037 setComponentClass(businessObjectComponent.getComponentClass());
038 setPropertyName(attributeDefinition.getName());
039 setPropertyLabel(attributeDefinition.getLabel());
040 }
041
042 public String getNamespaceCode() {
043 return namespaceCode;
044 }
045
046 public void setNamespaceCode(String namespaceCode) {
047 this.namespaceCode = namespaceCode;
048 }
049
050 public String getComponentClass() {
051 return componentClass;
052 }
053
054 public void setComponentClass(String componentClass) {
055 this.componentClass = componentClass;
056 }
057
058 public String getPropertyName() {
059 return propertyName;
060 }
061
062 public void setPropertyName(String propertyName) {
063 this.propertyName = propertyName;
064 }
065
066 public String getPropertyLabel() {
067 return propertyLabel;
068 }
069
070 public void setPropertyLabel(String propertyLabel) {
071 this.propertyLabel = propertyLabel;
072 }
073
074 public BusinessObjectComponent getBusinessObjectComponent() {
075 return businessObjectComponent;
076 }
077
078 public void setBusinessObjectComponent(BusinessObjectComponent businessObjectComponent) {
079 this.businessObjectComponent = businessObjectComponent;
080 }
081
082 @Override
083 protected LinkedHashMap toStringMapper() {
084 LinkedHashMap<String, String> toString = new LinkedHashMap<String, String>();
085 toString.put("namespaceCode", getNamespaceCode());
086 toString.put("componentClass", getComponentClass());
087 toString.put("propertyName", getPropertyName());
088 return toString;
089 }
090 }