001: /*
002: * <copyright>
003: *
004: * Copyright 1997-2004 BBNT Solutions, LLC
005: * under sponsorship of the Defense Advanced Research Projects
006: * Agency (DARPA).
007: *
008: * You can redistribute this software and/or modify it under the
009: * terms of the Cougaar Open Source License as published on the
010: * Cougaar Open Source Website (www.cougaar.org).
011: *
012: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
013: * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
014: * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
015: * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
016: * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
017: * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
018: * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
019: * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
020: * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
021: * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
022: * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
023: *
024: * </copyright>
025: */
026:
027: /* @generated Thu Sep 27 15:21:47 EDT 2007 from /u01/builds/cougaar/B12_4/B12_4/070927151721/src/glm/src/org/cougaar/glm/ldm/asset/alpprops.def - DO NOT HAND EDIT */
028: /** Implementation of RailLinkPG.
029: * @see RailLinkPG
030: * @see NewRailLinkPG
031: **/package org.cougaar.glm.ldm.asset;
032:
033: import org.cougaar.planning.ldm.measure.*;
034: import org.cougaar.planning.ldm.asset.*;
035: import org.cougaar.planning.ldm.plan.*;
036: import java.util.*;
037:
038: import org.cougaar.glm.ldm.plan.*;
039: import org.cougaar.glm.ldm.oplan.*;
040: import org.cougaar.glm.ldm.policy.*;
041: import org.cougaar.core.mts.MessageAddress;
042: import org.cougaar.glm.execution.common.InventoryReport;
043:
044: import java.io.ObjectOutputStream;
045: import java.io.ObjectInputStream;
046: import java.io.IOException;
047: import java.beans.PropertyDescriptor;
048: import java.beans.IndexedPropertyDescriptor;
049:
050: public class RailLinkPGImpl extends java.beans.SimpleBeanInfo implements
051: NewRailLinkPG, Cloneable {
052: public RailLinkPGImpl() {
053: }
054:
055: // Slots
056:
057: private long theNumberOfTracks;
058:
059: public long getNumberOfTracks() {
060: return theNumberOfTracks;
061: }
062:
063: public void setNumberOfTracks(long number_of_tracks) {
064: theNumberOfTracks = number_of_tracks;
065: }
066:
067: private Distance theTrackGauge;
068:
069: public Distance getTrackGauge() {
070: return theTrackGauge;
071: }
072:
073: public void setTrackGauge(Distance track_gauge) {
074: theTrackGauge = track_gauge;
075: }
076:
077: private double theMaximumGradeD2O;
078:
079: public double getMaximumGradeD2O() {
080: return theMaximumGradeD2O;
081: }
082:
083: public void setMaximumGradeD2O(double maximum_grade_D2O) {
084: theMaximumGradeD2O = maximum_grade_D2O;
085: }
086:
087: private double theMaximumGradeO2D;
088:
089: public double getMaximumGradeO2D() {
090: return theMaximumGradeO2D;
091: }
092:
093: public void setMaximumGradeO2D(double maximum_grade_O2D) {
094: theMaximumGradeO2D = maximum_grade_O2D;
095: }
096:
097: private Mass theMaximumAxleWeight;
098:
099: public Mass getMaximumAxleWeight() {
100: return theMaximumAxleWeight;
101: }
102:
103: public void setMaximumAxleWeight(Mass maximum_axle_weight) {
104: theMaximumAxleWeight = maximum_axle_weight;
105: }
106:
107: private Distance theMaximumCarHeight;
108:
109: public Distance getMaximumCarHeight() {
110: return theMaximumCarHeight;
111: }
112:
113: public void setMaximumCarHeight(Distance maximum_car_height) {
114: theMaximumCarHeight = maximum_car_height;
115: }
116:
117: private Distance theMaximumCarWidth;
118:
119: public Distance getMaximumCarWidth() {
120: return theMaximumCarWidth;
121: }
122:
123: public void setMaximumCarWidth(Distance maximum_car_width) {
124: theMaximumCarWidth = maximum_car_width;
125: }
126:
127: private Distance theMaximumCarLength;
128:
129: public Distance getMaximumCarLength() {
130: return theMaximumCarLength;
131: }
132:
133: public void setMaximumCarLength(Distance maximum_car_length) {
134: theMaximumCarLength = maximum_car_length;
135: }
136:
137: private Distance theMaximumTrainLength;
138:
139: public Distance getMaximumTrainLength() {
140: return theMaximumTrainLength;
141: }
142:
143: public void setMaximumTrainLength(Distance maximum_train_length) {
144: theMaximumTrainLength = maximum_train_length;
145: }
146:
147: private Speed theMaximumTrainSpeed;
148:
149: public Speed getMaximumTrainSpeed() {
150: return theMaximumTrainSpeed;
151: }
152:
153: public void setMaximumTrainSpeed(Speed maximum_train_speed) {
154: theMaximumTrainSpeed = maximum_train_speed;
155: }
156:
157: private String theLinkName;
158:
159: public String getLinkName() {
160: return theLinkName;
161: }
162:
163: public void setLinkName(String link_name) {
164: theLinkName = link_name;
165: }
166:
167: private Distance theLinkLength;
168:
169: public Distance getLinkLength() {
170: return theLinkLength;
171: }
172:
173: public void setLinkLength(Distance link_length) {
174: theLinkLength = link_length;
175: }
176:
177: public RailLinkPGImpl(RailLinkPG original) {
178: theNumberOfTracks = original.getNumberOfTracks();
179: theTrackGauge = original.getTrackGauge();
180: theMaximumGradeD2O = original.getMaximumGradeD2O();
181: theMaximumGradeO2D = original.getMaximumGradeO2D();
182: theMaximumAxleWeight = original.getMaximumAxleWeight();
183: theMaximumCarHeight = original.getMaximumCarHeight();
184: theMaximumCarWidth = original.getMaximumCarWidth();
185: theMaximumCarLength = original.getMaximumCarLength();
186: theMaximumTrainLength = original.getMaximumTrainLength();
187: theMaximumTrainSpeed = original.getMaximumTrainSpeed();
188: theLinkName = original.getLinkName();
189: theLinkLength = original.getLinkLength();
190: }
191:
192: public boolean equals(Object other) {
193:
194: if (!(other instanceof RailLinkPG)) {
195: return false;
196: }
197:
198: RailLinkPG otherRailLinkPG = (RailLinkPG) other;
199:
200: if (!(getNumberOfTracks() == otherRailLinkPG
201: .getNumberOfTracks())) {
202: return false;
203: }
204:
205: if (getTrackGauge() == null) {
206: if (otherRailLinkPG.getTrackGauge() != null) {
207: return false;
208: }
209: } else if (!(getTrackGauge().equals(otherRailLinkPG
210: .getTrackGauge()))) {
211: return false;
212: }
213:
214: if (!(getMaximumGradeD2O() == otherRailLinkPG
215: .getMaximumGradeD2O())) {
216: return false;
217: }
218:
219: if (!(getMaximumGradeO2D() == otherRailLinkPG
220: .getMaximumGradeO2D())) {
221: return false;
222: }
223:
224: if (getMaximumAxleWeight() == null) {
225: if (otherRailLinkPG.getMaximumAxleWeight() != null) {
226: return false;
227: }
228: } else if (!(getMaximumAxleWeight().equals(otherRailLinkPG
229: .getMaximumAxleWeight()))) {
230: return false;
231: }
232:
233: if (getMaximumCarHeight() == null) {
234: if (otherRailLinkPG.getMaximumCarHeight() != null) {
235: return false;
236: }
237: } else if (!(getMaximumCarHeight().equals(otherRailLinkPG
238: .getMaximumCarHeight()))) {
239: return false;
240: }
241:
242: if (getMaximumCarWidth() == null) {
243: if (otherRailLinkPG.getMaximumCarWidth() != null) {
244: return false;
245: }
246: } else if (!(getMaximumCarWidth().equals(otherRailLinkPG
247: .getMaximumCarWidth()))) {
248: return false;
249: }
250:
251: if (getMaximumCarLength() == null) {
252: if (otherRailLinkPG.getMaximumCarLength() != null) {
253: return false;
254: }
255: } else if (!(getMaximumCarLength().equals(otherRailLinkPG
256: .getMaximumCarLength()))) {
257: return false;
258: }
259:
260: if (getMaximumTrainLength() == null) {
261: if (otherRailLinkPG.getMaximumTrainLength() != null) {
262: return false;
263: }
264: } else if (!(getMaximumTrainLength().equals(otherRailLinkPG
265: .getMaximumTrainLength()))) {
266: return false;
267: }
268:
269: if (getMaximumTrainSpeed() == null) {
270: if (otherRailLinkPG.getMaximumTrainSpeed() != null) {
271: return false;
272: }
273: } else if (!(getMaximumTrainSpeed().equals(otherRailLinkPG
274: .getMaximumTrainSpeed()))) {
275: return false;
276: }
277:
278: if (getLinkName() == null) {
279: if (otherRailLinkPG.getLinkName() != null) {
280: return false;
281: }
282: } else if (!(getLinkName()
283: .equals(otherRailLinkPG.getLinkName()))) {
284: return false;
285: }
286:
287: if (getLinkLength() == null) {
288: if (otherRailLinkPG.getLinkLength() != null) {
289: return false;
290: }
291: } else if (!(getLinkLength().equals(otherRailLinkPG
292: .getLinkLength()))) {
293: return false;
294: }
295:
296: return true;
297: }
298:
299: public boolean hasDataQuality() {
300: return false;
301: }
302:
303: public org.cougaar.planning.ldm.dq.DataQuality getDataQuality() {
304: return null;
305: }
306:
307: // static inner extension class for real DataQuality Support
308: public final static class DQ extends RailLinkPGImpl implements
309: org.cougaar.planning.ldm.dq.NewHasDataQuality {
310: public DQ() {
311: super ();
312: }
313:
314: public DQ(RailLinkPG original) {
315: super (original);
316: }
317:
318: public Object clone() {
319: return new DQ(this );
320: }
321:
322: private transient org.cougaar.planning.ldm.dq.DataQuality _dq = null;
323:
324: public boolean hasDataQuality() {
325: return (_dq != null);
326: }
327:
328: public org.cougaar.planning.ldm.dq.DataQuality getDataQuality() {
329: return _dq;
330: }
331:
332: public void setDataQuality(
333: org.cougaar.planning.ldm.dq.DataQuality dq) {
334: _dq = dq;
335: }
336:
337: private void writeObject(ObjectOutputStream out)
338: throws IOException {
339: out.defaultWriteObject();
340: if (out instanceof org.cougaar.core.persist.PersistenceOutputStream)
341: out.writeObject(_dq);
342: }
343:
344: private void readObject(ObjectInputStream in)
345: throws ClassNotFoundException, IOException {
346: in.defaultReadObject();
347: if (in instanceof org.cougaar.core.persist.PersistenceInputStream)
348: _dq = (org.cougaar.planning.ldm.dq.DataQuality) in
349: .readObject();
350: }
351:
352: private final static PropertyDescriptor properties[] = new PropertyDescriptor[1];
353: static {
354: try {
355: properties[0] = new PropertyDescriptor("dataQuality",
356: DQ.class, "getDataQuality", null);
357: } catch (Exception e) {
358: e.printStackTrace();
359: }
360: }
361:
362: public PropertyDescriptor[] getPropertyDescriptors() {
363: PropertyDescriptor[] pds = super .properties;
364: PropertyDescriptor[] ps = new PropertyDescriptor[pds.length
365: + properties.length];
366: System.arraycopy(pds, 0, ps, 0, pds.length);
367: System.arraycopy(properties, 0, ps, pds.length,
368: properties.length);
369: return ps;
370: }
371: }
372:
373: private transient RailLinkPG _locked = null;
374:
375: public PropertyGroup lock(Object key) {
376: if (_locked == null)
377: _locked = new _Locked(key);
378: return _locked;
379: }
380:
381: public PropertyGroup lock() {
382: return lock(null);
383: }
384:
385: public NewPropertyGroup unlock(Object key) {
386: return this ;
387: }
388:
389: public Object clone() throws CloneNotSupportedException {
390: return new RailLinkPGImpl(RailLinkPGImpl.this );
391: }
392:
393: public PropertyGroup copy() {
394: try {
395: return (PropertyGroup) clone();
396: } catch (CloneNotSupportedException cnse) {
397: return null;
398: }
399: }
400:
401: public Class getPrimaryClass() {
402: return primaryClass;
403: }
404:
405: public String getAssetGetMethod() {
406: return assetGetter;
407: }
408:
409: public String getAssetSetMethod() {
410: return assetSetter;
411: }
412:
413: private final static PropertyDescriptor properties[] = new PropertyDescriptor[12];
414: static {
415: try {
416: properties[0] = new PropertyDescriptor("number_of_tracks",
417: RailLinkPG.class, "getNumberOfTracks", null);
418: properties[1] = new PropertyDescriptor("track_gauge",
419: RailLinkPG.class, "getTrackGauge", null);
420: properties[2] = new PropertyDescriptor("maximum_grade_D2O",
421: RailLinkPG.class, "getMaximumGradeD2O", null);
422: properties[3] = new PropertyDescriptor("maximum_grade_O2D",
423: RailLinkPG.class, "getMaximumGradeO2D", null);
424: properties[4] = new PropertyDescriptor(
425: "maximum_axle_weight", RailLinkPG.class,
426: "getMaximumAxleWeight", null);
427: properties[5] = new PropertyDescriptor(
428: "maximum_car_height", RailLinkPG.class,
429: "getMaximumCarHeight", null);
430: properties[6] = new PropertyDescriptor("maximum_car_width",
431: RailLinkPG.class, "getMaximumCarWidth", null);
432: properties[7] = new PropertyDescriptor(
433: "maximum_car_length", RailLinkPG.class,
434: "getMaximumCarLength", null);
435: properties[8] = new PropertyDescriptor(
436: "maximum_train_length", RailLinkPG.class,
437: "getMaximumTrainLength", null);
438: properties[9] = new PropertyDescriptor(
439: "maximum_train_speed", RailLinkPG.class,
440: "getMaximumTrainSpeed", null);
441: properties[10] = new PropertyDescriptor("link_name",
442: RailLinkPG.class, "getLinkName", null);
443: properties[11] = new PropertyDescriptor("link_length",
444: RailLinkPG.class, "getLinkLength", null);
445: } catch (Exception e) {
446: org.cougaar.util.log.Logging.getLogger(RailLinkPG.class)
447: .error("Caught exception", e);
448: }
449: }
450:
451: public PropertyDescriptor[] getPropertyDescriptors() {
452: return properties;
453: }
454:
455: private final class _Locked extends java.beans.SimpleBeanInfo
456: implements RailLinkPG, Cloneable, LockedPG {
457: private transient Object theKey = null;
458:
459: _Locked(Object key) {
460: if (this .theKey == null)
461: this .theKey = key;
462: }
463:
464: public _Locked() {
465: }
466:
467: public PropertyGroup lock() {
468: return this ;
469: }
470:
471: public PropertyGroup lock(Object o) {
472: return this ;
473: }
474:
475: public NewPropertyGroup unlock(Object key)
476: throws IllegalAccessException {
477: if (theKey.equals(key)) {
478: return RailLinkPGImpl.this ;
479: } else {
480: throw new IllegalAccessException(
481: "unlock: mismatched internal and provided keys!");
482: }
483: }
484:
485: public PropertyGroup copy() {
486: try {
487: return (PropertyGroup) clone();
488: } catch (CloneNotSupportedException cnse) {
489: return null;
490: }
491: }
492:
493: public Object clone() throws CloneNotSupportedException {
494: return new RailLinkPGImpl(RailLinkPGImpl.this );
495: }
496:
497: public boolean equals(Object object) {
498: return RailLinkPGImpl.this .equals(object);
499: }
500:
501: public long getNumberOfTracks() {
502: return RailLinkPGImpl.this .getNumberOfTracks();
503: }
504:
505: public Distance getTrackGauge() {
506: return RailLinkPGImpl.this .getTrackGauge();
507: }
508:
509: public double getMaximumGradeD2O() {
510: return RailLinkPGImpl.this .getMaximumGradeD2O();
511: }
512:
513: public double getMaximumGradeO2D() {
514: return RailLinkPGImpl.this .getMaximumGradeO2D();
515: }
516:
517: public Mass getMaximumAxleWeight() {
518: return RailLinkPGImpl.this .getMaximumAxleWeight();
519: }
520:
521: public Distance getMaximumCarHeight() {
522: return RailLinkPGImpl.this .getMaximumCarHeight();
523: }
524:
525: public Distance getMaximumCarWidth() {
526: return RailLinkPGImpl.this .getMaximumCarWidth();
527: }
528:
529: public Distance getMaximumCarLength() {
530: return RailLinkPGImpl.this .getMaximumCarLength();
531: }
532:
533: public Distance getMaximumTrainLength() {
534: return RailLinkPGImpl.this .getMaximumTrainLength();
535: }
536:
537: public Speed getMaximumTrainSpeed() {
538: return RailLinkPGImpl.this .getMaximumTrainSpeed();
539: }
540:
541: public String getLinkName() {
542: return RailLinkPGImpl.this .getLinkName();
543: }
544:
545: public Distance getLinkLength() {
546: return RailLinkPGImpl.this .getLinkLength();
547: }
548:
549: public final boolean hasDataQuality() {
550: return RailLinkPGImpl.this .hasDataQuality();
551: }
552:
553: public final org.cougaar.planning.ldm.dq.DataQuality getDataQuality() {
554: return RailLinkPGImpl.this .getDataQuality();
555: }
556:
557: public Class getPrimaryClass() {
558: return primaryClass;
559: }
560:
561: public String getAssetGetMethod() {
562: return assetGetter;
563: }
564:
565: public String getAssetSetMethod() {
566: return assetSetter;
567: }
568:
569: public PropertyDescriptor[] getPropertyDescriptors() {
570: return properties;
571: }
572:
573: public Class getIntrospectionClass() {
574: return RailLinkPGImpl.class;
575: }
576:
577: }
578:
579: }
|