mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-08-05 04:09:45 +02:00
improve plugin archetype and use version 1.23 of scm-manager as parent
This commit is contained in:
@@ -56,6 +56,13 @@
|
||||
<include>**/*.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<fileSet filtered="true" encoding="UTF-8">
|
||||
<directory>src/main/conf</directory>
|
||||
<includes>
|
||||
<include>**/*.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<fileSet filtered="false" encoding="UTF-8">
|
||||
<directory>src/main/resources</directory>
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
<resources>
|
||||
<resource>src/main/resources/META-INF/scm/plugin.xml</resource>
|
||||
<resource>src/main/resources/scm/sample.hello.js</resource>
|
||||
<resource>src/main/conf/logging.xml</resource>
|
||||
</resources>
|
||||
|
||||
</archetype>
|
||||
@@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<artifactId>scm-plugins</artifactId>
|
||||
<groupId>sonia.scm.plugins</groupId>
|
||||
<version>1.8</version>
|
||||
<version>1.23</version>
|
||||
</parent>
|
||||
|
||||
<groupId>${groupId}</groupId>
|
||||
@@ -36,6 +36,21 @@
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
|
||||
<plugin>
|
||||
<groupId>sonia.scm.maven</groupId>
|
||||
<artifactId>scm-maven-plugin</artifactId>
|
||||
<version>1.30</version>
|
||||
<configuration>
|
||||
<loggginConfiguration>src/main/conf/logging.xml</loggginConfiguration>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<repositories>
|
||||
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
|
||||
Copyright (c) 2010, Sebastian Sdorra
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice,
|
||||
this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
3. Neither the name of SCM-Manager; nor the names of its
|
||||
contributors may be used to endorse or promote products derived from this
|
||||
software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
http://bitbucket.org/sdorra/scm-manager
|
||||
|
||||
|
||||
-->
|
||||
|
||||
<configuration>
|
||||
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
|
||||
<encoder>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>
|
||||
</encoder>
|
||||
|
||||
</appender>
|
||||
|
||||
<logger name="sonia.scm" level="INFO" />
|
||||
<logger name="${package}" level="TRACE" />
|
||||
|
||||
<!-- suppress massive gzip logging -->
|
||||
<logger name="sonia.scm.filter.GZipFilter" level="WARN" />
|
||||
<logger name="sonia.scm.filter.GZipResponseStream" level="WARN" />
|
||||
|
||||
<logger name="sonia.scm.util.ServiceUtil" level="WARN" />
|
||||
|
||||
<root level="WARN">
|
||||
<appender-ref ref="STDOUT" />
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
@@ -34,9 +34,13 @@ package ${package};
|
||||
//~--- non-JDK imports --------------------------------------------------------
|
||||
|
||||
import com.google.inject.Inject;
|
||||
import com.google.inject.Provider;
|
||||
|
||||
import sonia.scm.security.SecurityContext;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.apache.shiro.subject.Subject;
|
||||
|
||||
import sonia.scm.SCMContext;
|
||||
import sonia.scm.SCMContextProvider;
|
||||
import sonia.scm.security.Role;
|
||||
|
||||
//~--- JDK imports ------------------------------------------------------------
|
||||
|
||||
@@ -45,39 +49,55 @@ import javax.ws.rs.Path;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
|
||||
/**
|
||||
* Sample RESTful WebService endpoint.
|
||||
* This sample resource is available at /api/rest/hello
|
||||
*/
|
||||
@Path("hello")
|
||||
public class HelloResource {
|
||||
public class HelloResource
|
||||
{
|
||||
|
||||
/**
|
||||
* Constructs ...
|
||||
* Constructs a new HelloResource and injects all required dependencies.
|
||||
*
|
||||
*
|
||||
* @param securityContextProvider
|
||||
* @param securityContextProvider SCM-Manager context
|
||||
*/
|
||||
@Inject
|
||||
public HelloResource(Provider<SecurityContext> securityContextProvider)
|
||||
public HelloResource(SCMContextProvider context)
|
||||
{
|
||||
message = "Hello "
|
||||
+ securityContextProvider.get().getUser().getDisplayName();
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
//~--- get methods ----------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Method description
|
||||
* Returns a hello message
|
||||
*
|
||||
*
|
||||
* @return
|
||||
* @return hello message
|
||||
*/
|
||||
@GET
|
||||
@Produces(MediaType.TEXT_PLAIN)
|
||||
public String getHelloMessage()
|
||||
{
|
||||
return message;
|
||||
Subject subject = SecurityUtils.getSubject();
|
||||
String username;
|
||||
|
||||
if (subject.hasRole(Role.USER))
|
||||
{
|
||||
username = (String) subject.getPrincipal();
|
||||
}
|
||||
else
|
||||
{
|
||||
username = SCMContext.USER_ANONYMOUS;
|
||||
}
|
||||
|
||||
return "Hello " + username + " from SCM-Manager " + context.getVersion();
|
||||
}
|
||||
|
||||
//~--- fields ---------------------------------------------------------------
|
||||
|
||||
/** Field description */
|
||||
private String message;
|
||||
/** SCM-Manager context */
|
||||
private SCMContextProvider context;
|
||||
}
|
||||
|
||||
@@ -35,14 +35,8 @@
|
||||
<plugin>
|
||||
|
||||
<information>
|
||||
<groupId>${dollar}{project.groupId}</groupId>
|
||||
<artifactId>${dollar}{project.artifactId}</artifactId>
|
||||
<version>${dollar}{project.version}</version>
|
||||
<name>${dollar}{project.name}</name>
|
||||
<description>${dollar}{project.description}</description>
|
||||
<!--
|
||||
<author></author>
|
||||
<url>${dollar}{project.url}</url>
|
||||
-->
|
||||
</information>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user