/******************************************************************************* * See the NOTICE file distributed with this work for additional information * regarding copyright ownership. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ package hr.fer.zemris.vhdllab.applets.editor.schema2.predefined.beans; /** * Port neke komponente. * * @author Axel * */ public final class SchemaPortWrapper { public static final int NO_PORT = Integer.MIN_VALUE; private int x, y; private String name; private String mappedto; private int portindex; public SchemaPortWrapper() { x = y = 0; name = null; mappedto = null; portindex = NO_PORT; } public final void setXOffset(Integer x) { this.x = x; } public final void setYOffset(Integer y) { this.y = y; } public final int getXOffset() { return x; } public final int getYOffset() { return y; } public final void setXOffset(String xStr) { x = Integer.parseInt(xStr); } public final void setYOffset(String yStr) { y = Integer.parseInt(yStr); } /** * Dobavlja ime porta. * */ public final String getName() { return name; } /** * Postavlja ime porta. * * @param name */ public final void setName(String name) { this.name = name; } /** * Vraca zicu na koju je spojen port. * * @return * Null ako nije spojen ni na sto, * ime signala inace. */ public final String getMapping() { return mappedto; } /** * Spaja port na signal (zicu) danog imena. * * @param signalToMapTo * Ime signala (zice). Null odspaja * port od signala ako je na njega * bio spojen. */ public final void setMapping(String signalToMapTo) { mappedto = signalToMapTo; } /** * Spaja port na signal (zicu) danog imena. * * @param signalToMapTo * Ime signala (zice). Null, string od samih praznina * ili prazan string odspajaju. */ public final void setStringMapping(String signalToMapTo) { if (signalToMapTo.trim().equals("")) this.mappedto = null; else this.mappedto = signalToMapTo; } public final void setStringName(String name) { if (name == null) this.name = ""; else this.name = name; } /* (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ @Override public final boolean equals(Object arg0) { if (arg0 == null) return false; if (!(arg0 instanceof SchemaPortWrapper)) return false; SchemaPortWrapper port = (SchemaPortWrapper)arg0; return (x == port.x && y == port.y && port.name.equals(this.name)); } /* (non-Javadoc) * @see java.lang.Object#hashCode() */ @Override public final int hashCode() { return x << 24 + y << 12 + name.hashCode(); } /* (non-Javadoc) * @see java.lang.Object#toString() */ @Override public final String toString() { return super.toString(); } public final void setPortindex(int portindex) { this.portindex = portindex; } public final int getPortindex() { return portindex; } }