From 756ac977dc08d456110212fb11e3e88d9f683253 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Fri, 23 Nov 2007 04:02:41 +0000 Subject: [PATCH] -added content to writing-consumer page git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@597539 13f79535-47bb-0310-9956-ffa450edef68 --- .../site/apt/customising/writing-consumer.apt | 85 ++++++++++++++++++- archiva-docs/src/site/site.xml | 2 +- 2 files changed, 83 insertions(+), 4 deletions(-) diff --git a/archiva-docs/src/site/apt/customising/writing-consumer.apt b/archiva-docs/src/site/apt/customising/writing-consumer.apt index e61e95666..7e2d896cc 100644 --- a/archiva-docs/src/site/apt/customising/writing-consumer.apt +++ b/archiva-docs/src/site/apt/customising/writing-consumer.apt @@ -1,8 +1,87 @@ ------ - Writing a Custom Repository Consumer + Writing a Consumer Plugin ------ + Maria Odea Ching + ------ + 23 Nov 2007 + ------ + +~~ Licensed to the Apache Software Foundation (ASF) under one +~~ or more contributor license agreements. See the NOTICE file +~~ distributed with this work for additional information +~~ regarding copyright ownership. The ASF licenses this file +~~ to you 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. + +~~ NOTE: For help with the syntax of this file, see: +~~ http://maven.apache.org/guides/mini/guide-apt-format.html + +Writing a Consumer Plugin + + For a sample custom consumer, you can checkout the archiva-consumer-plugin at the archiva sandbox in the SVN repository: + ++----+ +http://svn.apache.org/repos/asf/maven/sandbox/trunk/archiva/archiva-consumer-plugin ++----+ + + Below are the steps on how to create a custom repository consumer and plug it in Archiva: + + [[1]] Create a project for your component. + + [[2]] Declare your class or in this case, consumer as a component as shown in the example below. This + should be put at the class level. + ++----+ +Ex. +@plexus.component role="org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer" + role-hint="discover-new-artifact" + instantiation-strategy="per-lookup" + +where, + role: the interface that your class implements + role-hint: the lookup name of the component (your class/consumer) + instantiation-strategy: how your class will be instantiated ++----+ + + [[3]] Make sure to add the snippet below in the section of the project's pom. This is needed to + generate the components.xml. + ++----+ + + org.codehaus.plexus + plexus-maven-plugin + 1.3.5 + + + generate + + descriptor + + + + ++----+ + + [[4]] Package your project by executing 'mvn clean package' + + [[5]] Let's say you are using the apache-archiva-1.0-bin.tar.gz to run Archiva. Unpack + the binaries then go to bin/linux-x86-32/ (assuming you are running on Linux), then execute + './run.sh console'. Then stop or shutdown Archiva after it started. (This is necessary to unpack + the war file.) -Writing a Custom Repository Consumer + [[6]] Copy the jar file you created in step 4 in apache-archiva-1.0/apps/archiva/webapp/lib/ - :STUB: This is a documentation stub. + [[7]] Add the necessary configurations in archiva.xml (in this case, add 'discover-new-artifact' as a + ) + [[8]] Start up Archiva again. diff --git a/archiva-docs/src/site/site.xml b/archiva-docs/src/site/site.xml index 080f81a22..be85a587d 100644 --- a/archiva-docs/src/site/site.xml +++ b/archiva-docs/src/site/site.xml @@ -68,7 +68,7 @@ - + -- 2.39.5