[jboss-svn-commits] JBL Code SVN: r28041 - in labs/jbossrules/trunk/drools-repository/src: test/java/org/drools/repository and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jul 15 06:28:06 EDT 2009
Author: michael.neale at jboss.com
Date: 2009-07-15 06:28:04 -0400 (Wed, 15 Jul 2009)
New Revision: 28041
Modified:
labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java
labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/AssetItemTest.java
labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/events/StorageEventManagerTest.java
Log:
foundation for GUVNOR-414
Modified: labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java 2009-07-15 10:09:16 UTC (rev 28040)
+++ labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java 2009-07-15 10:28:04 UTC (rev 28041)
@@ -286,6 +286,8 @@
PUBLISHER_PROPERTY_NAME );
}
+
+
/**
* update a text field. This is a convenience method that just
* uses the JCR node to set a property.
@@ -293,6 +295,14 @@
*/
public void updateStringProperty(String value,
String prop) {
+ updateStringProperty(value, prop, true);
+ }
+
+ /**
+ * optionally update last updated...
+ */
+ public void updateStringProperty(String value,
+ String prop, boolean setLastUpdated) {
try {
checkIsUpdateable();
@@ -303,9 +313,11 @@
node.checkout();
node.setProperty( prop,
value );
- Calendar lastModified = Calendar.getInstance();
- this.node.setProperty( LAST_MODIFIED_PROPERTY_NAME,
- lastModified );
+ if (setLastUpdated) {
+ Calendar lastModified = Calendar.getInstance();
+ this.node.setProperty( LAST_MODIFIED_PROPERTY_NAME,
+ lastModified );
+ }
} catch ( Exception e ) {
if ( e instanceof RuntimeException ) {
Modified: labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/AssetItemTest.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/AssetItemTest.java 2009-07-15 10:09:16 UTC (rev 28040)
+++ labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/AssetItemTest.java 2009-07-15 10:28:04 UTC (rev 28041)
@@ -89,6 +89,39 @@
}
+
+ public void testUpdateStringProperty() throws Exception {
+ RulesRepository repo = getRepo();
+ PackageItem def = repo.loadDefaultPackage();
+ AssetItem asset = repo.loadDefaultPackage().addAsset("testUpdateStringProperty", "test content");
+ asset.updateContent("new content");
+ asset.checkin("");
+ Calendar lm = asset.getLastModified();
+
+ Thread.sleep(100);
+ asset.updateStringProperty("Anything", "AField");
+
+ assertEquals("Anything", asset.getStringProperty("AField"));
+ Calendar lm_ = asset.getLastModified();
+
+ assertTrue(lm_.getTimeInMillis() > lm.getTimeInMillis());
+
+ Thread.sleep(100);
+
+ asset.updateStringProperty("More", "AField", false);
+
+ assertEquals(lm_.getTimeInMillis(), asset.getLastModified().getTimeInMillis());
+
+ asset.updateContent("more content");
+ asset.checkin("");
+
+ asset = repo.loadAssetByUUID(asset.getUUID());
+ assertEquals("More", asset.getStringProperty("AField"));
+
+
+ }
+
+
public void testGetPackageItemHistorical() throws Exception {
RulesRepository repo = getRepo();
PackageItem pkg = repo.createPackage("testGetPackageItemHistorical", "");
Modified: labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/events/StorageEventManagerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/events/StorageEventManagerTest.java 2009-07-15 10:09:16 UTC (rev 28040)
+++ labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/events/StorageEventManagerTest.java 2009-07-15 10:28:04 UTC (rev 28041)
@@ -19,6 +19,7 @@
StorageEventManager.se = null;
}
+
public void testLoadEvent() {
System.setProperty("guvnor.loadEventListener", "org.drools.repository.events.MockLoadEvent");
LoadEvent le = StorageEventManager.loadEvent();
More information about the jboss-svn-commits
mailing list