1 56 57 package org.objectstyle.cayenne.dataview.dvmodeler; 58 59 import java.util.*; 60 import org.jdom.*; 61 62 67 68 public class Lookup{ 69 private ObjEntityViewField objEntityViewField; 70 private ObjEntityView lookupObjEntityView; private ObjEntityViewField lookupField; 73 private List saveErrors = new ArrayList(); 74 75 public Lookup(ObjEntityViewField objEntityViewField){ 76 this.objEntityViewField = objEntityViewField; 77 lookupObjEntityView = null; 78 lookupField = null; 79 } 80 81 public List getSaveErrors(){ 82 return Collections.unmodifiableList(saveErrors); 83 } 84 85 public boolean isEmpty(){ 86 return (lookupField == null)&&(lookupObjEntityView == null); 87 } 88 89 public void setLookupObjEntityView(ObjEntityView view){ 90 lookupObjEntityView = view; 91 } 92 93 public ObjEntityView getLookupObjEntityView(){ 94 return lookupObjEntityView; 95 } 96 97 98 public void setLookupField(ObjEntityViewField field){ 99 lookupField = field; 100 } 101 102 public ObjEntityViewField getLookupField(){ 103 return lookupField; 104 } 105 public String toString(){ 106 String resultString = ""; 107 if (lookupObjEntityView != null){ 108 resultString += lookupObjEntityView.getName(); 109 } 110 111 if (lookupField != null ){ 112 resultString += "." + lookupField.getName(); 113 }else{ 114 resultString += ""; 115 } 116 return resultString; 117 } 118 119 public Element getLookupElement(){ 120 Element e = new Element("lookup"); 121 if (saveErrors.size() != 0){ 122 saveErrors.clear(); 123 } 124 ObjEntityView view = objEntityViewField.getObjEntityView(); 125 DataView dataView = view.getDataView(); 126 String fieldPath = "<b>" + dataView.getName() + "." + view.getName() 127 + "." + objEntityViewField.getName() + "</b><br>"; 128 if (lookupObjEntityView != null){ 129 e.setAttribute(new Attribute("obj-entity-view-name", lookupObjEntityView.getName())); 130 }else { 131 e.setAttribute(new Attribute("obj-entity-view-name", "")); 132 saveErrors.add(fieldPath + "lookup hasn't attribute \"obj-entity-view-name\"<br><br>"); 133 } 134 if (lookupField != null){ 135 e.setAttribute(new Attribute("field-name", lookupField.getName())); 136 }else { 137 e.setAttribute(new Attribute("field-name", "")); 138 saveErrors.add(fieldPath + "lookup hasn't attribute \"field-name\"<br><br>"); 139 } 140 e.addContent(""); 141 142 return e; 143 } 144 } 145 | Popular Tags |