Author: brett
Date: Sat Sep  3 00:09:27 2005
New Revision: 267432

URL: http://svn.apache.org/viewcvs?rev=267432&view=rev
Log:
PR: MNG-821
Submitted by: Jesse McConnell
Reviewed by:  Brett Porter
commit missing file for file based profile activation

Added:
    
maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
   (with props)

Added: 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java?rev=267432&view=auto
==============================================================================
--- 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
 (added)
+++ 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
 Sat Sep  3 00:09:27 2005
@@ -0,0 +1,60 @@
+package org.apache.maven.profiles.activation;
+
+import org.apache.maven.model.Activation;
+import org.apache.maven.model.ActivationFile;
+import org.apache.maven.model.BuildBase;
+import org.apache.maven.model.Profile;
+import org.codehaus.plexus.util.FileUtils;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+public class FileProfileActivator
+    extends DetectedProfileActivator
+{
+    protected boolean canDetectActivation( Profile profile )
+    {
+        return profile.getActivation() != null && 
profile.getActivation().getFile() != null;
+    }
+
+    public boolean isActive( Profile profile )
+    {
+        Activation activation = profile.getActivation();
+
+        ActivationFile actFile = activation.getFile();
+
+        if ( actFile != null )
+        {
+            // check if the file exists, if it does then the profile will be 
active
+            String fileString = actFile.getExists();
+
+            if ( fileString != null && !"".equals( fileString ) )
+            {
+                return FileUtils.fileExists( fileString );
+            }
+
+            // check if the file is missing, if it is then the profile will be 
active
+            fileString = actFile.getMissing();
+
+            if ( fileString != null && !"".equals( fileString ) )
+            {
+                return !FileUtils.fileExists( fileString );
+            }
+        }
+
+        return false;
+    }
+}

Propchange: 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to