[jboss-svn-commits] JBL Code SVN: r20241 - 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
Sat May 31 05:46:52 EDT 2008
Author: michael.neale at jboss.com
Date: 2008-05-31 05:46:52 -0400 (Sat, 31 May 2008)
New Revision: 20241
Modified:
labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java
labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/RulesRepositoryTest.java
Log:
JBRULES-1612 WebDAV - adding snapshots
Modified: labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java 2008-05-31 03:09:31 UTC (rev 20240)
+++ labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java 2008-05-31 09:46:52 UTC (rev 20241)
@@ -98,15 +98,30 @@
private Session session;
+ private static boolean initialized = false;
+
/**
* This requires a JCR session be setup, and the repository be configured.
*/
public RulesRepository(
Session session) {
this.session = session;
+ checkForDataMigration(this);
}
- /**
+ private synchronized static void checkForDataMigration(RulesRepository self) {
+ if (initialized) return;
+ if (self.session.getUserID().equals("anonymous")) return;
+ //need to have check for migration in datastore
+ PackageIterator pkgs = self.listPackages();
+// while(pkgs.hasNext()) {
+//
+// }
+
+ initialized = true;
+ }
+
+ /**
* Will add a node named 'nodeName' of type 'type' to 'parent' if such a
* node does not already exist.
*
@@ -371,6 +386,17 @@
}
+ public boolean containsSnapshot(String packageName, String snapshotName) {
+ try {
+ Node n = this.getAreaNode( PACKAGE_SNAPSHOT_AREA ).getNode( packageName );
+ return n.hasNode(snapshotName);
+ } catch (RepositoryException e) {
+ log.error(e);
+ throw new RulesRepositoryException(e);
+ }
+ }
+
+
public PackageItem loadPackageSnapshot(String packageName, String snapshotName) {
try {
Node n = this.getAreaNode( PACKAGE_SNAPSHOT_AREA ).getNode( packageName ).getNode( snapshotName );
Modified: labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/RulesRepositoryTest.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/RulesRepositoryTest.java 2008-05-31 03:09:31 UTC (rev 20240)
+++ labs/jbossrules/trunk/drools-repository/src/test/java/org/drools/repository/RulesRepositoryTest.java 2008-05-31 09:46:52 UTC (rev 20241)
@@ -333,7 +333,10 @@
items = repo.findAssetsByCategory( "testCategoriesAndSnapshots", 0, -1 ).assets;
assertEquals(2, items.size());
+ assertTrue(repo.containsSnapshot("testCategoriesAndSnapshots", "SNAP 1"));
+ assertFalse(repo.containsSnapshot("testCategoriesAndSnapshots", "SNAP XXXX"));
+
}
public void testMoveRulePackage() throws Exception {
More information about the jboss-svn-commits
mailing list