From: <cl...@hy...> - 2008-11-07 05:48:15
|
Author: clee Date: 2008-11-06 21:48:09 -0800 (Thu, 06 Nov 2008) New Revision: 11733 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=11733 Modified: trunk/sql/measurement/Measurement.hbm.xml trunk/src/org/hyperic/hq/measurement/server/session/BaselineDAO.java trunk/src/org/hyperic/hq/measurement/server/session/Measurement.java trunk/src/org/hyperic/hq/measurement/server/session/MeasurementDAO.java Log: Use all-delete-orphan to faciliate baseline deletion Modified: trunk/sql/measurement/Measurement.hbm.xml =================================================================== --- trunk/sql/measurement/Measurement.hbm.xml 2008-11-07 02:17:41 UTC (rev 11732) +++ trunk/sql/measurement/Measurement.hbm.xml 2008-11-07 05:48:09 UTC (rev 11733) @@ -43,7 +43,7 @@ <column name="RESOURCE_ID"/> </many-to-one> - <bag inverse="true" cascade="all" name="baselinesBag" table="EAM_MEASUREMENT_BL"> + <bag inverse="true" cascade="all-delete-orphan" name="baselinesBag" table="EAM_MEASUREMENT_BL"> <cache usage="read-write"/> <key on-delete="cascade" column="MEASUREMENT_ID"/> <one-to-many class="Baseline"/> Modified: trunk/src/org/hyperic/hq/measurement/server/session/BaselineDAO.java =================================================================== --- trunk/src/org/hyperic/hq/measurement/server/session/BaselineDAO.java 2008-11-07 02:17:41 UTC (rev 11732) +++ trunk/src/org/hyperic/hq/measurement/server/session/BaselineDAO.java 2008-11-07 05:48:09 UTC (rev 11733) @@ -54,11 +54,6 @@ super.save(entity); } - public void remove(Baseline b) { - b.getMeasurement().clearBaseline(); - super.remove(b); - } - public Baseline create(Measurement m, long computeTime, boolean userEntered, Double mean, Double minExpectedValue, Double maxExpectedValue) { Modified: trunk/src/org/hyperic/hq/measurement/server/session/Measurement.java =================================================================== --- trunk/src/org/hyperic/hq/measurement/server/session/Measurement.java 2008-11-07 02:17:41 UTC (rev 11732) +++ trunk/src/org/hyperic/hq/measurement/server/session/Measurement.java 2008-11-07 05:48:09 UTC (rev 11733) @@ -6,7 +6,7 @@ * normal use of the program, and does *not* fall under the heading of * "derived work". * - * Copyright (C) [2004, 2005, 2006], Hyperic, Inc. + * Copyright (C) [2004-2008], Hyperic, Inc. * This file is part of HQ. * * HQ is free software; you can redistribute it and/or modify @@ -166,8 +166,12 @@ } void setBaseline(Baseline b) { - clearBaseline(); - getBaselinesBag().add(b); + final Collection baselines = getBaselinesBag(); + if (!baselines.isEmpty()) + baselines.clear(); + + if (b != null) + baselines.add(b); } public Baseline getBaseline() { @@ -177,10 +181,6 @@ return (Baseline)getBaselinesBag().iterator().next(); } - void clearBaseline() { - getBaselinesBag().clear(); - } - public boolean equals(Object obj) { if (!(obj instanceof Measurement) || !super.equals(obj)) { return false; Modified: trunk/src/org/hyperic/hq/measurement/server/session/MeasurementDAO.java =================================================================== --- trunk/src/org/hyperic/hq/measurement/server/session/MeasurementDAO.java 2008-11-07 02:17:41 UTC (rev 11732) +++ trunk/src/org/hyperic/hq/measurement/server/session/MeasurementDAO.java 2008-11-07 05:48:09 UTC (rev 11733) @@ -71,6 +71,10 @@ super.remove(entity); } + public void removeBaseline(Measurement m) { + m.setBaseline(null); + } + /** * retrieves List<Object[]> * [0] = Measurement |