You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ep...@apache.org on 2006/09/03 17:43:07 UTC

svn commit: r439793 - in /maven/continuum/branches/release-integration/continuum: continuum-api/src/main/java/org/apache/maven/continuum/release/ continuum-release/src/main/java/org/apache/maven/continuum/release/

Author: epunzalan
Date: Sun Sep  3 08:43:07 2006
New Revision: 439793

URL: http://svn.apache.org/viewvc?rev=439793&view=rev
Log:
PR: MCONTINUUM-727

moved interface and exception to continuum-api

Added:
    maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/
    maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java   (with props)
Removed:
    maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java
    maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java

Added: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java?rev=439793&view=auto
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java (added)
+++ maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java Sun Sep  3 08:43:07 2006
@@ -0,0 +1,40 @@
+package org.apache.maven.continuum.release;
+
+/*
+ * Copyright 2006 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.
+ */
+
+/**
+ * @author Jason van Zyl
+ */
+public class ContinuumReleaseException
+    extends Exception
+{
+    public ContinuumReleaseException( String id )
+    {
+        super( id );
+    }
+
+    public ContinuumReleaseException( String id,
+                                      Throwable throwable )
+    {
+        super( id, throwable );
+    }
+
+    public ContinuumReleaseException( Throwable throwable )
+    {
+        super( throwable );
+    }
+}

Propchange: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java?rev=439793&view=auto
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java (added)
+++ maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java Sun Sep  3 08:43:07 2006
@@ -0,0 +1,76 @@
+package org.apache.maven.continuum.release;
+
+/*
+ * Copyright 2006 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.
+ */
+
+import org.apache.maven.plugins.release.config.ReleaseDescriptor;
+import org.apache.maven.settings.Settings;
+
+import java.io.File;
+import java.util.Map;
+
+/**
+ * The Continuum Release Manager is responsible for performing releases based on a release descriptor
+ * that has been received by the Maven Release Plugin.
+ *
+ * @author Jason van Zyl
+ */
+//TODO:JW You can probably test this in isolation and then we can add methods to the main Continuum API for
+//        releasing. The Core Continuum component would then have a dependency on this component and just delegate
+//        to this component for release management.
+public interface ContinuumReleaseManager
+{
+    String ROLE = ContinuumReleaseManager.class.getName();
+
+    /**
+     * Prepare a project for release which also updates the release descriptor
+     *
+     * @param releaseId      Release Id to be used for the action. Will be used for perform afterwards.
+     * @param descriptor
+     * @param settings
+     * @throws ContinuumReleaseException
+     */
+    void prepare( String releaseId, ReleaseDescriptor descriptor, Settings settings )
+        throws ContinuumReleaseException;
+
+    /**
+     * Perform a release based on a given releaseId
+     *
+     * @param releaseId
+     * @param settings
+     * @param buildDirectory
+     * @param goals
+     * @param useReleaseProfile
+     * @throws ContinuumReleaseException
+     */
+    void perform( String releaseId, Settings settings, File buildDirectory,
+                  String goals, boolean useReleaseProfile )
+        throws ContinuumReleaseException;
+
+    /**
+     * Perform a release based on a release descriptor received by the Maven Release Plugin.
+     *
+     * @param descriptor
+     * @throws ContinuumReleaseException
+     */
+    void perform( String releaseId, ReleaseDescriptor descriptor, Settings settings, File buildDirectory,
+                  String goals, boolean useReleaseProfile )
+        throws ContinuumReleaseException;
+
+    void setPreparedReleases( Map preparedReleases );
+
+    Map getPreparedReleases();
+}

Propchange: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/release/ContinuumReleaseManager.java
------------------------------------------------------------------------------
    svn:eol-style = native