Skip to content

Commit

Permalink
Merge fbc96a9 into 2058de8
Browse files Browse the repository at this point in the history
  • Loading branch information
xlongshu committed Jun 2, 2018
2 parents 2058de8 + fbc96a9 commit bfa7680
Show file tree
Hide file tree
Showing 68 changed files with 3,005 additions and 400 deletions.
3 changes: 1 addition & 2 deletions .gitignore
Expand Up @@ -4,5 +4,4 @@
/.classpath
/.idea
/.DS_Store
*.iml
/bin/
*.iml
54 changes: 54 additions & 0 deletions bin/create-project.bat
@@ -0,0 +1,54 @@
@echo off
echo --------------------------------------------
echo Create Titan Module Batch
for /f "tokens=2 delims==" %%a in ('wmic path win32_operatingsystem get LocalDateTime /value') do (
set t=%%a
)
set Today=%t:~0,4%-%t:~4,2%-%t:~6,2%
echo @version 1.0.%Today%
echo @author Administrator
echo --------------------------------------------
set /p systemName=Please insert your Titan Module English name£º
echo --------------------------------------------
echo Titan Module creating£¬Please wait...
echo --------------------------------------------
md %systemName%\src\main\java\com\mybank\bkcommon\collector\%systemName%\collector
md %systemName%\src\main\java\com\mybank\bkcommon\collector\%systemName%\model
md %systemName%\src\main\resources\META-INF\spring
md %systemName%\src\main\resources\view
md %systemName%\src\test\java\com\mybank\bkcommon\collector\%systemName%
md %systemName%\src\test\resources\
copy project-template\helloworld.vm %systemName%\src\main\resources\view\helloworld.vm
copy project-template\HelloWorld.java %systemName%\src\main\java\com\mybank\bkcommon\collector\%systemName%\model\HelloWorld.java
copy project-template\HelloWorldCollector.java %systemName%\src\main\java\com\mybank\bkcommon\collector\%systemName%\collector\HelloWorldCollector.java
copy project-template\pom-template.xml %systemName%\pom.xml
copy project-template\integration.xml %systemName%\src\main\resources\META-INF\spring\integration.xml
copy project-template\QuickStarter-template.java %systemName%\src\test\java\com\mybank\bkcommon\collector\%systemName%\QuickStarter.java
copy project-template\integration-test.xml %systemName%\src\test\resources\integration-test.xml
copy project-template\spring-template.xml %systemName%\src\main\resources\META-INF\spring\%systemName%.xml
copy project-template\log4j-template.xml %systemName%\src\test\resources\log4j.xml
copy project-template\log4j-main-template.xml %systemName%\src\main\resources\log4j.xml
setlocal Enabledelayedexpansion
call:changePath %systemName%\src\test\java\com\mybank\bkcommon\collector\%systemName%\QuickStarter.java
call:changePath %systemName%\pom.xml
call:changePath %systemName%\src\test\resources\integration-test.xml
call:changePath %systemName%\src\main\resources\META-INF\spring\%systemName%.xml
call:changePath %systemName%\src\main\java\com\mybank\bkcommon\collector\%systemName%\model\HelloWorld.java
call:changePath %systemName%\src\main\java\com\mybank\bkcommon\collector\%systemName%\collector\HelloWorldCollector.java
call:changePath %systemName%\src\main\resources\log4j.xml
endlocal
echo "Create Titan Module %systemName% Finish"
pause

:changePath
set pacStr=${package_name}
set proStr=${project_name}
set targetStr=%systemName%
for /f "tokens=* delims=£¥" %%i in (%1) do (
set var=%%i
set var=!var:%pacStr%=%targetStr%!
set var=!var:%proStr%=%targetStr%!
echo !var!>>$
)
move $ %1
goto:eof
57 changes: 57 additions & 0 deletions bin/create-project.sh
@@ -0,0 +1,57 @@
name=$1

if [ -z "$name" ]; then
echo "need name"
exit 2
fi

URL="https://private-alipayobjects.alipay.com/alipay-rmsdeploy-image/rmsportal/xJXQkCxicEVnAvkHWXgI.gz"
installer_file="project-template.tar.gz"

function download {
echo "Downloading Titan project template: $URL"
curl -# $URL > $installer_file || exit
}

function unzip {
echo "unzip $installer_file"
tar -zxvf $installer_file
}

function createProject
{
mkdir -p $name/src/main
mkdir -p $name/src/main/java/com/mybank/bkcommon/collector/$name
mkdir -p $name/src/main/java/com/mybank/bkcommon/collector/$name/collector
mkdir -p $name/src/main/java/com/mybank/bkcommon/collector/$name/model
mkdir -p $name/src/main/resources/META-INF/spring
mkdir -p $name/src/main/resources/view

mkdir -p $name/src/test
mkdir -p $name/src/test/java/com/mybank/bkcommon/collector/$name/util
mkdir -p $name/src/test/resources/

cp project-template/helloworld.vm $name/src/main/resources/view/helloworld.vm
cp project-template/HelloWorld.java $name/src/main/java/com/mybank/bkcommon/collector/$name/model/HelloWorld.java
cp project-template/HelloWorldCollector.java $name/src/main/java/com/mybank/bkcommon/collector/$name/collector/HelloWorldCollector.java
cp project-template/pom-template.xml $name/pom.xml
cp project-template/integration.xml $name/src/main/resources/META-INF/spring/integration.xml
cp project-template/QuickStarter-template.java $name/src/test/java/com/mybank/bkcommon/collector/$name/QuickStarter.java
cp project-template/integration-test.xml $name/src/test/resources/integration-test.xml
cp project-template/spring-template.xml $name/src/main/resources/META-INF/spring/$name.xml
cp project-template/log4j-template.xml $name/src/test/resources/log4j.xml
cp project-template/log4j-main-template.xml $name/src/main/resources/log4j.xml

sed -i '' 's/${package_name}/'$name'/g' $name/src/test/java/com/mybank/bkcommon/collector/$name/QuickStarter.java
sed -i '' 's/${project_name}/'$name'/g' $name/pom.xml
sed -i '' 's/${project_name}/'$name'/g' $name/src/test/resources/integration-test.xml
sed -i '' 's/${project_name}/'$name'/g' $name/src/main/resources/META-INF/spring/$name.xml
sed -i '' 's/${package_name}/'$name'/g' $name/src/main/java/com/mybank/bkcommon/collector/$name/model/HelloWorld.java
sed -i '' 's/${package_name}/'$name'/g' $name/src/main/java/com/mybank/bkcommon/collector/$name/collector/HelloWorldCollector.java
sed -i '' 's/${project_name}/'$name'/g' $name/src/main/resources/log4j.xml
echo "Create Titan Module $name Finish"
}

download
unzip
createProject
Binary file added bin/template/project-template.tar
Binary file not shown.
14 changes: 7 additions & 7 deletions jarslink-api/.gitignore
@@ -1,8 +1,8 @@
/target
/.project
/.settings
/.classpath
/.idea
/.DS_Store
*.iml
/target
/.project
/.settings/*
/.classpath
/.idea
/.DS_Store
*.iml
/bin/
2 changes: 1 addition & 1 deletion jarslink-api/deploy.sh
@@ -1 +1 @@
mvn clean deploy
mvn clean deploy -P deploy
127 changes: 63 additions & 64 deletions jarslink-api/pom.xml
Expand Up @@ -5,20 +5,22 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.alipay.jarslink</groupId>
<artifactId>jarslink-api</artifactId>
<version>1.6.1.20180301</version>
<version>1.7.0.20180401</version>
<name>Alipay JarsLink API</name>
<url>https://github.com/alibaba/jarslink</url>
<packaging>jar</packaging>
<description>Alipay JarsLink API</description>

<properties>
<slf4j.version>1.7.7</slf4j.version>
<apache.commons.lang.version>2.6</apache.commons.lang.version>
<org.springframework.version>4.0.2.RELEASE</org.springframework.version>
<apache.commons.collections.version>3.2.1</apache.commons.collections.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.6</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>

<org.springframework.version>4.2.0.RELEASE</org.springframework.version>
<slf4j.version>1.7.7</slf4j.version>
<guava.version>17.0</guava.version>
</properties>

<organization>
Expand Down Expand Up @@ -53,7 +55,7 @@
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<artifactId>spring-beans</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
Expand All @@ -63,79 +65,39 @@
<optional>true</optional>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.2</version>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${org.springframework.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>${apache.commons.lang.version}</version>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>

<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>${apache.commons.collections.version}</version>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.5</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>17.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${org.springframework.version}</version>
<scope>test</scope>
<version>${guava.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- maven -->
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.7</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>

<!-- GPG -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>

<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
Expand Down Expand Up @@ -177,8 +139,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<source>${java.version}</source>
<target>${java.version}</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
Expand Down Expand Up @@ -265,6 +227,7 @@
</plugin>
</plugins>
</build>

<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
Expand All @@ -276,7 +239,43 @@
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>

<profiles>
<profile>
<!--deploy profile-->
<id>deploy</id>
<build>
<plugins>
<!-- maven -->
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.7</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>

<!-- GPG -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
@@ -0,0 +1,19 @@
package com.alipay.jarslink.api;

import org.springframework.context.ConfigurableApplicationContext;

/**
* 加载模块时在创建完模块的spring-context后刷新spring-context前调用,用于做一些拦截处理
*
* @author joe
* @version 2018.04.04 10:54
*/
public interface ApplicationContextAware extends JarslinkAware{
/**
* 加载模块时在创建完模块的spring-context后刷新spring-context前调用
*
* @param context 当前加载的模块对应的configurableApplicationContext
* @param moduleConfig 当前加载的模块对应的配置
*/
void setConfigurableApplicationContext(ConfigurableApplicationContext context, ModuleConfig moduleConfig);
}
@@ -0,0 +1,19 @@
package com.alipay.jarslink.api;

import org.springframework.context.ConfigurableApplicationContext;

/**
* 加载模块时在创建完模块的spring-context并且刷新spring-context后调用,用于做一些拦截处理
*
* @author joe
* @version 2018.04.04 10:53
*/
public interface ApplicationContextPostProcessor extends JarslinkPostProcessor {
/**
* 加载模块时在创建完模块的spring-context并且刷新spring-context后调用
*
* @param context 当前加载的模块对应的configurableApplicationContext
* @param moduleConfig 当前加载的模块对应的配置
*/
void setConfigurableApplicationContext(ConfigurableApplicationContext context, ModuleConfig moduleConfig);
}
@@ -0,0 +1,10 @@
package com.alipay.jarslink.api;

/**
* 所有Aware的顶级接口
*
* @author joe
* @version 2018.04.04 11:05
*/
public interface JarslinkAware {
}

0 comments on commit bfa7680

Please sign in to comment.