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 AirVehiclePG.
029: * @see AirVehiclePG
030: * @see NewAirVehiclePG
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 AirVehiclePGImpl extends java.beans.SimpleBeanInfo
051: implements NewAirVehiclePG, Cloneable {
052: public AirVehiclePGImpl() {
053: }
054:
055: // Slots
056:
057: private Distance theMinimumRunwayLength;
058:
059: public Distance getMinimumRunwayLength() {
060: return theMinimumRunwayLength;
061: }
062:
063: public void setMinimumRunwayLength(Distance minimum_runway_length) {
064: theMinimumRunwayLength = minimum_runway_length;
065: }
066:
067: private boolean theMidAirRefuelable;
068:
069: public boolean getMidAirRefuelable() {
070: return theMidAirRefuelable;
071: }
072:
073: public void setMidAirRefuelable(boolean mid_air_refuelable) {
074: theMidAirRefuelable = mid_air_refuelable;
075: }
076:
077: private Duration theQuickTurnaroundTime;
078:
079: public Duration getQuickTurnaroundTime() {
080: return theQuickTurnaroundTime;
081: }
082:
083: public void setQuickTurnaroundTime(Duration quick_turnaround_time) {
084: theQuickTurnaroundTime = quick_turnaround_time;
085: }
086:
087: private Duration theMeanTimeToRepair;
088:
089: public Duration getMeanTimeToRepair() {
090: return theMeanTimeToRepair;
091: }
092:
093: public void setMeanTimeToRepair(Duration mean_time_to_repair) {
094: theMeanTimeToRepair = mean_time_to_repair;
095: }
096:
097: private long theMeanMissionLegsBetweenRepairs;
098:
099: public long getMeanMissionLegsBetweenRepairs() {
100: return theMeanMissionLegsBetweenRepairs;
101: }
102:
103: public void setMeanMissionLegsBetweenRepairs(
104: long mean_mission_legs_between_repairs) {
105: theMeanMissionLegsBetweenRepairs = mean_mission_legs_between_repairs;
106: }
107:
108: private Duration theMeanFlightTimeBetweenRepairs;
109:
110: public Duration getMeanFlightTimeBetweenRepairs() {
111: return theMeanFlightTimeBetweenRepairs;
112: }
113:
114: public void setMeanFlightTimeBetweenRepairs(
115: Duration mean_flight_time_between_repairs) {
116: theMeanFlightTimeBetweenRepairs = mean_flight_time_between_repairs;
117: }
118:
119: private String theVehicleType;
120:
121: public String getVehicleType() {
122: return theVehicleType;
123: }
124:
125: public void setVehicleType(String vehicle_type) {
126: theVehicleType = vehicle_type;
127: }
128:
129: private long theCrewRequirements;
130:
131: public long getCrewRequirements() {
132: return theCrewRequirements;
133: }
134:
135: public void setCrewRequirements(long crew_requirements) {
136: theCrewRequirements = crew_requirements;
137: }
138:
139: public AirVehiclePGImpl(AirVehiclePG original) {
140: theMinimumRunwayLength = original.getMinimumRunwayLength();
141: theMidAirRefuelable = original.getMidAirRefuelable();
142: theQuickTurnaroundTime = original.getQuickTurnaroundTime();
143: theMeanTimeToRepair = original.getMeanTimeToRepair();
144: theMeanMissionLegsBetweenRepairs = original
145: .getMeanMissionLegsBetweenRepairs();
146: theMeanFlightTimeBetweenRepairs = original
147: .getMeanFlightTimeBetweenRepairs();
148: theVehicleType = original.getVehicleType();
149: theCrewRequirements = original.getCrewRequirements();
150: }
151:
152: public boolean equals(Object other) {
153:
154: if (!(other instanceof AirVehiclePG)) {
155: return false;
156: }
157:
158: AirVehiclePG otherAirVehiclePG = (AirVehiclePG) other;
159:
160: if (getMinimumRunwayLength() == null) {
161: if (otherAirVehiclePG.getMinimumRunwayLength() != null) {
162: return false;
163: }
164: } else if (!(getMinimumRunwayLength().equals(otherAirVehiclePG
165: .getMinimumRunwayLength()))) {
166: return false;
167: }
168:
169: if (!(getMidAirRefuelable() == otherAirVehiclePG
170: .getMidAirRefuelable())) {
171: return false;
172: }
173:
174: if (getQuickTurnaroundTime() == null) {
175: if (otherAirVehiclePG.getQuickTurnaroundTime() != null) {
176: return false;
177: }
178: } else if (!(getQuickTurnaroundTime().equals(otherAirVehiclePG
179: .getQuickTurnaroundTime()))) {
180: return false;
181: }
182:
183: if (getMeanTimeToRepair() == null) {
184: if (otherAirVehiclePG.getMeanTimeToRepair() != null) {
185: return false;
186: }
187: } else if (!(getMeanTimeToRepair().equals(otherAirVehiclePG
188: .getMeanTimeToRepair()))) {
189: return false;
190: }
191:
192: if (!(getMeanMissionLegsBetweenRepairs() == otherAirVehiclePG
193: .getMeanMissionLegsBetweenRepairs())) {
194: return false;
195: }
196:
197: if (getMeanFlightTimeBetweenRepairs() == null) {
198: if (otherAirVehiclePG.getMeanFlightTimeBetweenRepairs() != null) {
199: return false;
200: }
201: } else if (!(getMeanFlightTimeBetweenRepairs()
202: .equals(otherAirVehiclePG
203: .getMeanFlightTimeBetweenRepairs()))) {
204: return false;
205: }
206:
207: if (getVehicleType() == null) {
208: if (otherAirVehiclePG.getVehicleType() != null) {
209: return false;
210: }
211: } else if (!(getVehicleType().equals(otherAirVehiclePG
212: .getVehicleType()))) {
213: return false;
214: }
215:
216: if (!(getCrewRequirements() == otherAirVehiclePG
217: .getCrewRequirements())) {
218: return false;
219: }
220:
221: return true;
222: }
223:
224: public boolean hasDataQuality() {
225: return false;
226: }
227:
228: public org.cougaar.planning.ldm.dq.DataQuality getDataQuality() {
229: return null;
230: }
231:
232: // static inner extension class for real DataQuality Support
233: public final static class DQ extends AirVehiclePGImpl implements
234: org.cougaar.planning.ldm.dq.NewHasDataQuality {
235: public DQ() {
236: super ();
237: }
238:
239: public DQ(AirVehiclePG original) {
240: super (original);
241: }
242:
243: public Object clone() {
244: return new DQ(this );
245: }
246:
247: private transient org.cougaar.planning.ldm.dq.DataQuality _dq = null;
248:
249: public boolean hasDataQuality() {
250: return (_dq != null);
251: }
252:
253: public org.cougaar.planning.ldm.dq.DataQuality getDataQuality() {
254: return _dq;
255: }
256:
257: public void setDataQuality(
258: org.cougaar.planning.ldm.dq.DataQuality dq) {
259: _dq = dq;
260: }
261:
262: private void writeObject(ObjectOutputStream out)
263: throws IOException {
264: out.defaultWriteObject();
265: if (out instanceof org.cougaar.core.persist.PersistenceOutputStream)
266: out.writeObject(_dq);
267: }
268:
269: private void readObject(ObjectInputStream in)
270: throws ClassNotFoundException, IOException {
271: in.defaultReadObject();
272: if (in instanceof org.cougaar.core.persist.PersistenceInputStream)
273: _dq = (org.cougaar.planning.ldm.dq.DataQuality) in
274: .readObject();
275: }
276:
277: private final static PropertyDescriptor properties[] = new PropertyDescriptor[1];
278: static {
279: try {
280: properties[0] = new PropertyDescriptor("dataQuality",
281: DQ.class, "getDataQuality", null);
282: } catch (Exception e) {
283: e.printStackTrace();
284: }
285: }
286:
287: public PropertyDescriptor[] getPropertyDescriptors() {
288: PropertyDescriptor[] pds = super .properties;
289: PropertyDescriptor[] ps = new PropertyDescriptor[pds.length
290: + properties.length];
291: System.arraycopy(pds, 0, ps, 0, pds.length);
292: System.arraycopy(properties, 0, ps, pds.length,
293: properties.length);
294: return ps;
295: }
296: }
297:
298: private transient AirVehiclePG _locked = null;
299:
300: public PropertyGroup lock(Object key) {
301: if (_locked == null)
302: _locked = new _Locked(key);
303: return _locked;
304: }
305:
306: public PropertyGroup lock() {
307: return lock(null);
308: }
309:
310: public NewPropertyGroup unlock(Object key) {
311: return this ;
312: }
313:
314: public Object clone() throws CloneNotSupportedException {
315: return new AirVehiclePGImpl(AirVehiclePGImpl.this );
316: }
317:
318: public PropertyGroup copy() {
319: try {
320: return (PropertyGroup) clone();
321: } catch (CloneNotSupportedException cnse) {
322: return null;
323: }
324: }
325:
326: public Class getPrimaryClass() {
327: return primaryClass;
328: }
329:
330: public String getAssetGetMethod() {
331: return assetGetter;
332: }
333:
334: public String getAssetSetMethod() {
335: return assetSetter;
336: }
337:
338: private final static PropertyDescriptor properties[] = new PropertyDescriptor[8];
339: static {
340: try {
341: properties[0] = new PropertyDescriptor(
342: "minimum_runway_length", AirVehiclePG.class,
343: "getMinimumRunwayLength", null);
344: properties[1] = new PropertyDescriptor(
345: "mid_air_refuelable", AirVehiclePG.class,
346: "getMidAirRefuelable", null);
347: properties[2] = new PropertyDescriptor(
348: "quick_turnaround_time", AirVehiclePG.class,
349: "getQuickTurnaroundTime", null);
350: properties[3] = new PropertyDescriptor(
351: "mean_time_to_repair", AirVehiclePG.class,
352: "getMeanTimeToRepair", null);
353: properties[4] = new PropertyDescriptor(
354: "mean_mission_legs_between_repairs",
355: AirVehiclePG.class,
356: "getMeanMissionLegsBetweenRepairs", null);
357: properties[5] = new PropertyDescriptor(
358: "mean_flight_time_between_repairs",
359: AirVehiclePG.class,
360: "getMeanFlightTimeBetweenRepairs", null);
361: properties[6] = new PropertyDescriptor("vehicle_type",
362: AirVehiclePG.class, "getVehicleType", null);
363: properties[7] = new PropertyDescriptor("crew_requirements",
364: AirVehiclePG.class, "getCrewRequirements", null);
365: } catch (Exception e) {
366: org.cougaar.util.log.Logging.getLogger(AirVehiclePG.class)
367: .error("Caught exception", e);
368: }
369: }
370:
371: public PropertyDescriptor[] getPropertyDescriptors() {
372: return properties;
373: }
374:
375: private final class _Locked extends java.beans.SimpleBeanInfo
376: implements AirVehiclePG, Cloneable, LockedPG {
377: private transient Object theKey = null;
378:
379: _Locked(Object key) {
380: if (this .theKey == null)
381: this .theKey = key;
382: }
383:
384: public _Locked() {
385: }
386:
387: public PropertyGroup lock() {
388: return this ;
389: }
390:
391: public PropertyGroup lock(Object o) {
392: return this ;
393: }
394:
395: public NewPropertyGroup unlock(Object key)
396: throws IllegalAccessException {
397: if (theKey.equals(key)) {
398: return AirVehiclePGImpl.this ;
399: } else {
400: throw new IllegalAccessException(
401: "unlock: mismatched internal and provided keys!");
402: }
403: }
404:
405: public PropertyGroup copy() {
406: try {
407: return (PropertyGroup) clone();
408: } catch (CloneNotSupportedException cnse) {
409: return null;
410: }
411: }
412:
413: public Object clone() throws CloneNotSupportedException {
414: return new AirVehiclePGImpl(AirVehiclePGImpl.this );
415: }
416:
417: public boolean equals(Object object) {
418: return AirVehiclePGImpl.this .equals(object);
419: }
420:
421: public Distance getMinimumRunwayLength() {
422: return AirVehiclePGImpl.this .getMinimumRunwayLength();
423: }
424:
425: public boolean getMidAirRefuelable() {
426: return AirVehiclePGImpl.this .getMidAirRefuelable();
427: }
428:
429: public Duration getQuickTurnaroundTime() {
430: return AirVehiclePGImpl.this .getQuickTurnaroundTime();
431: }
432:
433: public Duration getMeanTimeToRepair() {
434: return AirVehiclePGImpl.this .getMeanTimeToRepair();
435: }
436:
437: public long getMeanMissionLegsBetweenRepairs() {
438: return AirVehiclePGImpl.this
439: .getMeanMissionLegsBetweenRepairs();
440: }
441:
442: public Duration getMeanFlightTimeBetweenRepairs() {
443: return AirVehiclePGImpl.this
444: .getMeanFlightTimeBetweenRepairs();
445: }
446:
447: public String getVehicleType() {
448: return AirVehiclePGImpl.this .getVehicleType();
449: }
450:
451: public long getCrewRequirements() {
452: return AirVehiclePGImpl.this .getCrewRequirements();
453: }
454:
455: public final boolean hasDataQuality() {
456: return AirVehiclePGImpl.this .hasDataQuality();
457: }
458:
459: public final org.cougaar.planning.ldm.dq.DataQuality getDataQuality() {
460: return AirVehiclePGImpl.this .getDataQuality();
461: }
462:
463: public Class getPrimaryClass() {
464: return primaryClass;
465: }
466:
467: public String getAssetGetMethod() {
468: return assetGetter;
469: }
470:
471: public String getAssetSetMethod() {
472: return assetSetter;
473: }
474:
475: public PropertyDescriptor[] getPropertyDescriptors() {
476: return properties;
477: }
478:
479: public Class getIntrospectionClass() {
480: return AirVehiclePGImpl.class;
481: }
482:
483: }
484:
485: }
|