| 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.maven.plugin.AbstractMojo
org.apache.sling.maven.bundlesupport.BundleInstallFileMojo
public class BundleInstallFileMojo
Install an OSGi bundle to a running Sling instance.
| Field Summary | |
|---|---|
protected  java.lang.String | 
mimeType
The content type / mime type used for the HTTP PUT (if sling.usePut=true). | 
protected  org.apache.maven.project.MavenProject | 
project
The Maven project.  | 
protected  java.lang.String | 
slingUrl
The URL of the running Sling instance.  | 
protected  java.lang.String | 
slingUrlSuffix
An optional url suffix which will be appended to the sling.url
 for use as the real target url. | 
protected  boolean | 
usePut
If a simple HTTP PUT should be used instead of the standard POST to the felix console.  | 
| Fields inherited from interface org.apache.maven.plugin.Mojo | 
|---|
ROLE | 
| Constructor Summary | |
|---|---|
BundleInstallFileMojo()
 | 
|
| Method Summary | |
|---|---|
protected  void | 
addConfiguration(org.apache.commons.httpclient.HttpClient client,
                 java.lang.String targetURL,
                 java.lang.String dir,
                 java.lang.String path)
Add a new configuration for the file system provider  | 
protected  java.lang.String | 
checkWebConsoleVersion(java.lang.String targetUrl)
Try to get the version of the web console  | 
protected  void | 
configure(java.lang.String targetURL,
          java.io.File file)
Add configurations to a running OSGi instance for initial content.  | 
 void | 
execute()
 | 
protected  java.lang.String | 
getBundleFileName()
 | 
protected  java.lang.String | 
getBundleSymbolicName(java.io.File jarFile)
Returns the symbolic name of the given bundle.  | 
protected  java.util.Map | 
getCurrentFileProviderConfigs(java.lang.String targetURL,
                              org.apache.commons.httpclient.HttpClient client)
Return all file provider configs for this project  | 
protected  org.apache.commons.httpclient.HttpClient | 
getHttpClient()
Get the http client  | 
protected  java.util.jar.Manifest | 
getManifest(java.io.File bundleFile)
Get the manifest from the File.  | 
protected  java.lang.String | 
getPutURL(java.lang.String targetURL,
          java.lang.String fileName)
Returns the URL for PUT or DELETE by appending the filename to the targetURL.  | 
protected  java.lang.String | 
getTargetURL()
Returns the combination of sling.url and
 sling.urlSuffix. | 
protected  void | 
post(java.lang.String targetURL,
     java.io.File file)
 | 
protected  void | 
put(java.lang.String targetURL,
    java.io.File file)
 | 
protected  void | 
removeConfiguration(org.apache.commons.httpclient.HttpClient client,
                    java.lang.String targetURL,
                    java.lang.String pid)
 | 
protected  void | 
throwWebConsoleTooOldException()
Helper method to throw a meaningful exception for an outdated felix web console.  | 
| Methods inherited from class org.apache.maven.plugin.AbstractMojo | 
|---|
getLog, getPluginContext, setLog, setPluginContext | 
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
protected java.lang.String slingUrl
protected java.lang.String slingUrlSuffix
sling.url
 for use as the real target url. This allows to configure different target URLs
 in each POM, while using the same common sling.url in a parent
 POM (eg. sling.url=http://localhost:8080 and
 sling.urlSuffix=/project/specific/path). This is typically used
 in conjunction with a HTTP PUT (sling.usePut=true).
protected boolean usePut
uninstall goal, a HTTP DELETE will be
 used.
protected java.lang.String mimeType
sling.usePut=true).
protected org.apache.maven.project.MavenProject project
| Constructor Detail | 
|---|
public BundleInstallFileMojo()
| Method Detail | 
|---|
protected java.lang.String getBundleFileName()
                                      throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected java.lang.String getTargetURL()
sling.url and
 sling.urlSuffix.
protected java.lang.String getPutURL(java.lang.String targetURL,
                                     java.lang.String fileName)
public void execute()
             throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected void throwWebConsoleTooOldException()
                                       throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected org.apache.commons.httpclient.HttpClient getHttpClient()
protected void post(java.lang.String targetURL,
                    java.io.File file)
             throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected void put(java.lang.String targetURL,
                   java.io.File file)
            throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected void configure(java.lang.String targetURL,
                         java.io.File file)
                  throws org.apache.maven.plugin.MojoExecutionException
targetURL - The web console base urlfile - The artifact (bundle)
org.apache.maven.plugin.MojoExecutionException
protected void removeConfiguration(org.apache.commons.httpclient.HttpClient client,
                                   java.lang.String targetURL,
                                   java.lang.String pid)
                            throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected void addConfiguration(org.apache.commons.httpclient.HttpClient client,
                                java.lang.String targetURL,
                                java.lang.String dir,
                                java.lang.String path)
                         throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected java.util.Map getCurrentFileProviderConfigs(java.lang.String targetURL,
                                                      org.apache.commons.httpclient.HttpClient client)
                                               throws org.apache.maven.plugin.MojoExecutionException
targetURL - The targetURL of the webconsoleclient - The http client
org.apache.maven.plugin.MojoExecutionException
protected java.util.jar.Manifest getManifest(java.io.File bundleFile)
                                      throws java.io.IOException
bundleFile - The bundle jar
java.io.IOExceptionprotected java.lang.String checkWebConsoleVersion(java.lang.String targetUrl)
null if version is not detectable.protected java.lang.String getBundleSymbolicName(java.io.File jarFile)
jarFile does not contain a manifest with a
 Bundle-SymbolicName header null is
 returned. Otherwise the value of the Bundle-SymbolicName
 header is returned.
 
 This method may also be used to check whether the file is a bundle at all
 as it is assumed, that only if the file contains an OSGi bundle will the
 Bundle-SymbolicName manifest header be set.
jarFile - The file providing the bundle whose symbolic name is
            requested.
Bundle-SymbolicName manifest header or
         null if no manifest exists in the file or the
         header is not contained in the manifest. However, if
         null is returned, the file may be assumed to not
         contain an OSGi bundle.
  | 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||