[jboss-svn-commits] JBL Code SVN: r11501 - in labs/jbossrules/trunk/drools-repository/src: test/java/org/drools/repository and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Apr 30 03:46:09 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-04-30 03:46:08 -0400 (Mon, 30 Apr 2007)
New Revision: 11501
Modified:
labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/PackageItem.java
labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/PackageItemTest.java
Log:
JBRULES-823 Package builder w00t !
Modified: labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/PackageItem.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/PackageItem.java 2007-04-30 04:34:34 UTC (rev 11500)
+++ labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/PackageItem.java 2007-04-30 07:46:08 UTC (rev 11501)
@@ -8,7 +8,9 @@
import java.util.Iterator;
import java.util.List;
+import javax.jcr.AccessDeniedException;
import javax.jcr.ItemExistsException;
+import javax.jcr.ItemNotFoundException;
import javax.jcr.Node;
import javax.jcr.Property;
import javax.jcr.RepositoryException;
@@ -83,19 +85,40 @@
+ /**
+ * Return the name of the package.
+ */
public String getName() {
try {
- if (this.rulesRepository.isNotSnapshot( this.node.getParent() )) {
+
+ if (isSnapshot()) {
+ return this.node.getParent().getName();
+ } else {
return super.getName();
- } else {
-
- return this.node.getParent().getName();
-
}
} catch (RepositoryException e) {
throw new RulesRepositoryException( e );
}
}
+
+ /**
+ * @return true if this package is actually a snapshot.
+ */
+ public boolean isSnapshot() {
+ try {
+ return (!this.rulesRepository.isNotSnapshot( this.node.getParent() ));
+ } catch ( RepositoryException e ) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ /**
+ * returns the name of the snapshot, if this package is really a snapshot.
+ * If it is not, it will just return the name of the package, so use wisely !
+ */
+ public String getSnapshotName() {
+ return super.getName();
+ }
/**
* Adds a rule to the current package with no category (not recommended !).
Modified: labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/PackageItemTest.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/PackageItemTest.java 2007-04-30 04:34:34 UTC (rev 11500)
+++ labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/PackageItemTest.java 2007-04-30 07:46:08 UTC (rev 11501)
@@ -89,7 +89,9 @@
RulesRepository repo = getRepo();
PackageItem pkg = repo.createPackage( "testPackageSnapshot", "this is something" );
+ assertFalse(pkg.isSnapshot());
+
AssetItem it1 = pkg.addAsset( "testPackageCopy1", "la" );
AssetItem it2 = pkg.addAsset( "testPackageCopy2", "la" );
@@ -109,6 +111,10 @@
//just check we can load it all via UUID as well...
PackageItem pkgLoaded = repo.loadPackageSnapshot( "testPackageSnapshot", "PROD 2.0" );
+ assertTrue(pkgLoaded.isSnapshot());
+ assertEquals("PROD 2.0", pkgLoaded.getSnapshotName());
+ assertEquals("testPackageSnapshot", pkgLoaded.getName());
+
PackageItem _pkgLoaded = repo.loadPackageByUUID( pkgLoaded.getUUID() );
assertNotNull(_pkgLoaded);
assertEquals(pkgLoaded.getCreatedDate(), _pkgLoaded.getCreatedDate());
More information about the jboss-svn-commits
mailing list