juergen 02/03/18 04:20:50
Modified: src/webdav/server/org/apache/slide/webdav/method
PropPatchMethod.java PutMethod.java
Log:
Perform checkin/checkout only if it is not a checkout VCR.
(ralf)
Revision Changes Path
1.30 +11 -5
jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java
Index: PropPatchMethod.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- PropPatchMethod.java 18 Mar 2002 10:15:49 -0000 1.29
+++ PropPatchMethod.java 18 Mar 2002 12:20:50 -0000 1.30
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java,v
1.29 2002/03/18 10:15:49 juergen Exp $
- * $Revision: 1.29 $
- * $Date: 2002/03/18 10:15:49 $
+ * $Header:
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java,v
1.30 2002/03/18 12:20:50 juergen Exp $
+ * $Revision: 1.30 $
+ * $Date: 2002/03/18 12:20:50 $
*
* ====================================================================
*
@@ -84,6 +84,9 @@
import org.apache.slide.lock.*;
import org.apache.slide.content.*;
import org.apache.slide.webdav.util.*;
+import org.apache.slide.webdav.util.resourcekind.ResourceKind;
+import org.apache.slide.webdav.util.resourcekind.AbstractResourceKind;
+import org.apache.slide.webdav.util.resourcekind.CheckedOutVersionControlled;
import org.apache.slide.util.*;
/**
@@ -303,6 +306,7 @@
revisionDescriptor = new NodeRevisionDescriptor(0);
}
+ ResourceKind resourceKind =
AbstractResourceKind.determineResourceKind(revisionDescriptor);
// check preconditions
ViolatedPrecondition violatedPrecondition = null;
@@ -315,7 +319,8 @@
}
// Changed for DeltaV --start--
- if( Configuration.useVersionControl() ) {
+ boolean mustCheckIn = false;
+ if( Configuration.useVersionControl() && !(resourceKind instanceof
CheckedOutVersionControlled) ) {
NodeProperty avProp =
revisionDescriptor.getProperty( P_AUTO_VERSION );
@@ -324,6 +329,7 @@
vHelp.checkout(
revisionDescriptors, revisionDescriptor, false, false );
//forkOk=false, applyToVersion=false
+ mustCheckIn = true;
}
}
@@ -373,7 +379,7 @@
content.store(slideToken, resourcePath, revisionDescriptor, null);
// Changed for DeltaV --start--
- if( Configuration.useVersionControl() ) {
+ if( Configuration.useVersionControl() && mustCheckIn ) {
NodeProperty avProp =
revisionDescriptor.getProperty( P_AUTO_VERSION );
1.32 +13 -5
jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java
Index: PutMethod.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- PutMethod.java 18 Mar 2002 10:13:35 -0000 1.31
+++ PutMethod.java 18 Mar 2002 12:20:50 -0000 1.32
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java,v
1.31 2002/03/18 10:13:35 juergen Exp $
- * $Revision: 1.31 $
- * $Date: 2002/03/18 10:13:35 $
+ * $Header:
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java,v
1.32 2002/03/18 12:20:50 juergen Exp $
+ * $Revision: 1.32 $
+ * $Date: 2002/03/18 12:20:50 $
*
* ====================================================================
*
@@ -91,6 +91,9 @@
import org.apache.slide.webdav.util.PreconditionViolationException;
import org.apache.slide.webdav.util.ViolatedPrecondition;
import org.apache.slide.webdav.util.UriHandler;
+import org.apache.slide.webdav.util.resourcekind.ResourceKind;
+import org.apache.slide.webdav.util.resourcekind.AbstractResourceKind;
+import org.apache.slide.webdav.util.resourcekind.CheckedOutVersionControlled;
import org.apache.slide.util.Configuration;
/**
@@ -222,6 +225,8 @@
revisionDescriptor.setContentLength(-1);
}
+ ResourceKind resourceKind =
AbstractResourceKind.determineResourceKind(revisionDescriptor);
+
// check preconditions
ViolatedPrecondition violatedPrecondition =
getPreconditionViolation(revisionDescriptor);
if (violatedPrecondition != null) {
@@ -229,7 +234,8 @@
}
// Changed for DeltaV --start--
- if( Configuration.useVersionControl() ) {
+ boolean mustCheckIn = false;
+ if( Configuration.useVersionControl() && !(resourceKind instanceof
CheckedOutVersionControlled) ) {
NodeProperty avProp =
revisionDescriptor.getProperty( P_AUTO_VERSION );
@@ -238,6 +244,7 @@
vHelp.checkout(
revisionDescriptors, revisionDescriptor, false, false
); //forkOk=false, applyToVersion=false
+ mustCheckIn = true;
}
}
// Changed for DeltaV --end--
@@ -288,7 +295,7 @@
resp.setStatus(WebdavStatus.SC_NO_CONTENT);
// Changed for DeltaV --start--
- if( Configuration.useVersionControl() ) {
+ if( Configuration.useVersionControl() && mustCheckIn) {
NodeProperty avProp =
revisionDescriptor.getProperty( P_AUTO_VERSION );
@@ -461,6 +468,7 @@
if (violatedPrecondition != null) {
resp.setStatus(violatedPrecondition.getStatusCode());
+ resp.setContentType(TEXT_XML);
Element errorElement = new Element(E_ERROR,
Namespace.getNamespace(DEFAULT_NAMESPACE));
Element preconditionElement = new
Element(violatedPrecondition.getPrecondition(),
Namespace.getNamespace(DEFAULT_NAMESPACE));
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>