Author: handyande
Date: Sun Jun  3 13:22:45 2007
New Revision: 543979

URL: http://svn.apache.org/viewvc?view=rev&rev=543979
Log:
Allow users to create a Public folder in their home dir that is globally 
readable.
Of course, it is configurable too

Modified:
    maven/sandbox/trunk/enterprise/enterprise-model/src/main/mdo/enterprise.xml
    
maven/sandbox/trunk/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/EnterpriseIDiskWebDavServlet.java

Modified: 
maven/sandbox/trunk/enterprise/enterprise-model/src/main/mdo/enterprise.xml
URL: 
http://svn.apache.org/viewvc/maven/sandbox/trunk/enterprise/enterprise-model/src/main/mdo/enterprise.xml?view=diff&rev=543979&r1=543978&r2=543979
==============================================================================
--- maven/sandbox/trunk/enterprise/enterprise-model/src/main/mdo/enterprise.xml 
(original)
+++ maven/sandbox/trunk/enterprise/enterprise-model/src/main/mdo/enterprise.xml 
Sun Jun  3 13:22:45 2007
@@ -39,6 +39,12 @@
           <type>boolean</type>
           <defaultValue>false</defaultValue>
         </field>
+        <field>
+          <name>publicIDiskFolder</name>
+          <version>1.1.0+</version>
+          <type>boolean</type>
+          <defaultValue>true</defaultValue>
+        </field>
       </fields>
     </class>
   </classes>

Modified: 
maven/sandbox/trunk/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/EnterpriseIDiskWebDavServlet.java
URL: 
http://svn.apache.org/viewvc/maven/sandbox/trunk/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/EnterpriseIDiskWebDavServlet.java?view=diff&rev=543979&r1=543978&r2=543979
==============================================================================
--- 
maven/sandbox/trunk/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/EnterpriseIDiskWebDavServlet.java
 (original)
+++ 
maven/sandbox/trunk/enterprise/enterprise-web/src/main/java/org/apache/maven/enterprise/web/EnterpriseIDiskWebDavServlet.java
 Sun Jun  3 13:22:45 2007
@@ -124,6 +124,21 @@
             {
                 return true;
             }
+            else if ( config.getWebdav().isPublicIDiskFolder() )
+            {
+                String path = request.getPathInfo();
+                int pos = path.indexOf("/", 1);
+
+                if ( pos > 0 )
+                {
+                    String subPath = path.substring( pos + 1 ).toLowerCase();
+
+                    if ( subPath.equals( "public" ) || subPath.startsWith( 
"public/") )
+                    {
+                        return true;
+                    }
+                }
+            }
         }
 
         return false;


Reply via email to