<%@ jet package="org.eclipse.jpt.jpa.ui.internal.wizards.entity" imports="org.eclipse.jpt.jpa.ui.internal.wizards.entity.data.model.* java.util.* " class="IdClassTemplate" %> <% CreateEntityTemplateModel model = (CreateEntityTemplateModel) argument; if (model.getJavaPackageName()!=null && model.getJavaPackageName()!="") { %>package <%=model.getJavaPackageName()%>;<%}%> <% Collection imports = model.getImports(true); for (String anImport : imports) { %> import <%=anImport%>; <% } %> /** * ID class for entity: <%=model.getClassName()%> * */ public class <%=model.getIdClassName()%> <% List interfaces = model.getInterfaces(); if (interfaces.size()>0) {%> implements <% } for (int i=0; i0) { %>, <%}%><%=INTERFACE%><%}%> { <% List fields = model.getEntityFields(); List pkFields = model.getPKFields(); for (int i=0; i private <%=entity.getType()%> <%=entity.getName()%>;<%}%> private static final long serialVersionUID = 1L; public <%=model.getIdClassName()%>() {} <% fields = model.getEntityFields(); if (fields != null) for (int i=0; i public <%=TYPE%> get<%=METHOD%>() { return this.<%=NAME%>; } public void set<%=METHOD%>(<%=TYPE%> <%=NAME%>) { this.<%=NAME%> = <%=NAME%>; } <%}%> /* * @see java.lang.Object#equals(Object) */ public boolean equals(Object o) { if (o == this) { return true; } if (!(o instanceof <%=model.getIdClassName()%>)) { return false; } <%=model.getIdClassName()%> other = (<%=model.getIdClassName()%>) o; return true <% if (fields != null) for (int i=0; i <% String TYPE = field.getType(); String GET_METHOD = "get" + NAME.substring(0,1).toUpperCase() + NAME.substring(1); %> <% if (TYPE.equals("boolean") || TYPE.equals("byte") || TYPE.equals("char") || TYPE.equals("short") || TYPE.equals("int") || TYPE.equals("long")) { %> && <%=GET_METHOD%>() == other.<%=GET_METHOD%>() <% } else if (TYPE.equals("double")) { %> && (Double.doubleToLongBits(<%=GET_METHOD%>()) == Double.doubleToLongBits(other.<%=GET_METHOD%>())) <% } else if (TYPE.equals("float")) { %> && (Float.floatToIntBits(<%=GET_METHOD%>()) == Float.floatToIntBits(other.<%=GET_METHOD%>())) <% } else { %> && (<%=GET_METHOD%>() == null ? other.<%=GET_METHOD%>() == null : <%=GET_METHOD%>().equals(other.<%=GET_METHOD%>())) <% } %> <% } %>; } /* * @see java.lang.Object#hashCode() */ public int hashCode() { final int prime = 31; int result = 1; <% if (fields != null) for (int i=0; i <% String TYPE = field.getType(); String GET_METHOD = "get" + NAME.substring(0,1).toUpperCase() + NAME.substring(1); %> <% if (TYPE.equals("boolean")) { %> result = prime * result + (<%=GET_METHOD%>() ? 1 : 0); <% } else if (TYPE.equals("int")) { %> result = prime * result + <%=GET_METHOD%>(); <% } else if (TYPE.equals("byte") || TYPE.equals("char") || TYPE.equals("short")) { %> result = prime * result + ((int) <%=GET_METHOD%>()); <% } else if (TYPE.equals("long")) { %> result = prime * result + ((int) (<%=GET_METHOD%>() ^ (<%=GET_METHOD%>() >>> 32))); <% } else if (TYPE.equals("double")) { %> result = prime * result + ((int) (Double.doubleToLongBits(<%=GET_METHOD%>() ) ^ (Double.doubleToLongBits(<%=GET_METHOD%>()) >>> 32))); <% } else if (TYPE.equals("float")) { %> result = prime * result + Float.floatToIntBits(<%=GET_METHOD%>()); <% } else { %> result = prime * result + (<%=GET_METHOD%>() == null ? 0 : <%=GET_METHOD%>().hashCode()); <% } %> <% } %> return result; } }