From d4855d773c33eb44c297d61660d66e7adb44d174 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Thu, 19 Mar 2009 07:22:41 +0000 Subject: [PATCH] [MRM-1036] o add documentation for web services git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@755863 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/site/apt/adminguide/index.apt | 2 + .../src/site/apt/adminguide/web-services.apt | 127 ++++++++++++++++++ archiva-docs/src/site/site.xml | 1 + 3 files changed, 130 insertions(+) create mode 100644 archiva-docs/src/site/apt/adminguide/web-services.apt diff --git a/archiva-docs/src/site/apt/adminguide/index.apt b/archiva-docs/src/site/apt/adminguide/index.apt index 2ae481f0a..11b2d6a6a 100644 --- a/archiva-docs/src/site/apt/adminguide/index.apt +++ b/archiva-docs/src/site/apt/adminguide/index.apt @@ -23,6 +23,8 @@ System Administrators Guide to Apache Archiva * {{{reports.html} Repository health reports}} + * {{{web-services.html} Archiva Web Services}} + [] diff --git a/archiva-docs/src/site/apt/adminguide/web-services.apt b/archiva-docs/src/site/apt/adminguide/web-services.apt new file mode 100644 index 000000000..994594068 --- /dev/null +++ b/archiva-docs/src/site/apt/adminguide/web-services.apt @@ -0,0 +1,127 @@ + ------ + Using Archiva Web Services + ------ + Maria Odea Ching + ------ + 19 Mar 2009 + ------ + +~~ 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 + +Using Archiva Web Services + + Web services is a new feature for 1.2. Archiva exposes two types of services: administrative and search. A sample client + that shows how to access these services is provided in the source code. You can check out the module for the sample client at: + ++----+ +http://svn.apache.org/repos/asf/archiva/tags/archiva-1.2/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-client/ ++----+ + + The SampleClient class shows how to connect to and invoke the Archiva web services. To execute the sample client, edit + the following configuration in the archiva-xmlrpc-client module's pom.xml: + ++-------------------------------------------------------------------------+ + + ... + + + + org.codehaus.mojo + exec-maven-plugin + + java + org.apache.archiva.web.xmlrpc.client.SampleClient + + + http://127.0.0.1:9091/xmlrpc + admin + ${password} + + + + + + ++-------------------------------------------------------------------------+ + + In the first \, set the url of the Archiva instance you are running but make sure that you have appended + at the end. For example if your Archiva instance is running in localhost and port 8080, then set it to http://localhost:8080/archiva/xmlrpc. + + The second \ corresponds to the username of the existing Archiva user that will be used to access the services while + the last \ is where you set the user's password. + + After configuring the pom, you can now run the sample client by executing <> in the command-line. You should be + able to see the list of managed and remote repositories, the list of database and repository consumers and more printed on the + command-line. + +* Administration Service + + In order for a user to be able to access the Administration services, the user must have a <> role in Archiva. + + The Administration Service exposes the following methods: + + [[1]] Boolean executeRepositoryScanner( String repoId ) - triggers the repository scanner to scan the specified repository. + + [[2]] Boolean executeDatabaseScanner() - triggers the database scanner to be executed. + + [[3]] List\ getAllDatabaseConsumers() - retrieves all the Archiva database consumers associated with the database scanning. + + [[4]] Boolean configureDatabaseConsumer( String consumerId, boolean enable ) - enables or disables the specified database consumer. + + [[5]] List\ getAllRepositoryConsumers() - retrieves all the Archiva repository consumers associated with the repository scanning. + + [[6]] Boolean configureRepositoryConsumer( String repoId, String consumerId, boolean enable ) - enables or disables the specified + repository consumer. + + [[7]] List\ getAllManagedRepositories() - retrieves all the managed repositories in Archiva. + + [[8]] List\ getAllRemoteRepositories() - retrieves all the remote repositories in Archiva. + + [[9]] Boolean deleteArtifact( String repoId, String groupId, String artifactId, String version ) - deletes the specified artifact from + the repository. + +* Search Service + + To access the Search Service, the user must have at least a <> role. + + The Search Service exposes the following methods: + + [[1]] List\ quickSearch( String queryString ) - search for the specified term. This behaves just like Archiva's Quick Search + from the web app. + + [[2]] List\ getArtifactByChecksum( String checksum ) - search for artifact(s) matching the specified checksum. This behaves like + the Find Artifact from the web app. + + [[3]] List\ getArtifactVersions( String groupId, String artifactId ) - retrieves all available versions of the artifact. + + [[4]] List\ getArtifactVersionsByDate( String groupId, String artifactId, String version, Date since ) - + + [[5]] List\ getDependencies( String groupId, String artifactId, String version ) - retrieves all the dependencies of the specified + artifact. This is the equivalent of the Dependencies tab in the Artifact Browse. + + [[6]] List\ getDependencyTree( String groupId, String artifactId, String version ) - + + [[7]] List\ getDependees( String groupId, String artifactId, String version ) - retrieves all the artifacts with a + dependency on the specified artifact. This is the equivalent of the Used By tab in the Artifact Browse. + diff --git a/archiva-docs/src/site/site.xml b/archiva-docs/src/site/site.xml index 9104d78e1..7ab22eafe 100644 --- a/archiva-docs/src/site/site.xml +++ b/archiva-docs/src/site/site.xml @@ -67,6 +67,7 @@ +