Skip to content

Commit cdeaa42

Browse files
committed
Version 1.0.0 of the SNSExtendedClient
1 parent 191d514 commit cdeaa42

File tree

7 files changed

+1868
-7
lines changed

7 files changed

+1868
-7
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
/target/
2+
.idea
3+
*.iml
4+
*.DS_Store

README.md

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,29 @@
1-
## My Project
1+
## Amazon SNS Extended Client Library for Java
22

3-
TODO: Fill this README out!
3+
The **Amazon SNS Extended Client Library for Java** enables you to publish messages that are greater than the current SNS limit of 256 KB, up to a maximum of 2 GB.
4+
It saves the actual payload in S3 and publish the reference of S3 object to topic. Subscribed SQS queues can use SQSExtendedClient to get the payload from S3.
45

5-
Be sure to:
6+
You can download release builds through the [releases section of this](https://github.com/awslabs/amazon-sns-java-extended-client-lib) project.
67

7-
* Change the title in this README
8-
* Edit your repository description on GitHub
8+
For more information on using the amazon-sns-java-extended-client-lib, see our getting started guide [here](blog post url will be added here).
99

10-
## License
10+
## Getting Started
1111

12-
This project is licensed under the Apache-2.0 License.
12+
* **Sign up for AWS** -- Before you begin, you need an AWS account. For more information about creating an AWS account , see [create and activate aws account](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/).
13+
* **Minimum requirements** Java 8 (or later) and [Maven 3](http://maven.apache.org/).
14+
* **Download** -- Download the [latest preview release](https://github.com/awslabs/amazon-sns-java-extended-client-lib/releases) or pick it up from Maven:
15+
```xml
16+
<dependency>
17+
<groupId>software.amazon.sns</groupId>
18+
<artifactId>sns-extended-client</artifactId>
19+
<version>1.0.0</version>
20+
<type>jar</type>
21+
</dependency>
22+
```
23+
* **Further information about Amazon SNS** - Read the [API documentation](http://aws.amazon.com/documentation/sns/).
24+
25+
## Contribution
26+
See [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information.
1327

28+
## License
29+
This project is licensed under the Apache-2.0 License.

VERSIONING.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
## Versioning Policy
2+
3+
We use a three-part X.Y.Z (Major.Minor.Patch) versioning definition, as follows:
4+
* X (Major) version changes are significant and expected to break backwards compatibility.
5+
* Y (Minor) version changes are moderate changes. These include:
6+
* Significant non-breaking feature additions.
7+
* Any change to the version of a dependency.
8+
* Possible backwards-incompatible changes. These changes will be noted and explained in detail in the release notes.
9+
* Z (Patch) version changes are small changes. These changes will not break backwards compatibility.
10+
* Z releases will also include warning of upcoming breaking changes, whenever possible.
11+
12+
## What this means for you
13+
14+
We recommend running the most recent version. Here are our suggestions for managing updates:
15+
16+
* X changes will require some effort to incorporate.
17+
* Y changes will not require significant effort to incorporate.
18+
* If you have good unit and integration tests, these changes are generally safe to pick up automatically.
19+
* Z changes will not require any changes to your code. Z changes are intended to be picked up automatically.
20+
* Good unit and integration tests are always recommended.

pom.xml

Lines changed: 186 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,186 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
7+
<groupId>software.amazon.sns</groupId>
8+
<artifactId>sns-extended-client</artifactId>
9+
<version>1.0.0</version>
10+
11+
<name>Amazon SNS Extended Client Library for Java</name>
12+
<description>An extension to the Amazon SNS client that enables sending messages up to 2GB via Amazon S3.
13+
</description>
14+
<url>https://github.com/awslabs/amazon-sns-java-extended-client-lib</url>
15+
16+
<scm>
17+
<url>https://github.com/awslabs/amazon-sns-java-extended-client-lib</url>
18+
</scm>
19+
20+
<licenses>
21+
<license>
22+
<name>Apache License, Version 2.0</name>
23+
<url>https://aws.amazon.com/apache2.0</url>
24+
<distribution>repo</distribution>
25+
</license>
26+
</licenses>
27+
28+
<properties>
29+
<aws-java-sdk.version>1.11.817</aws-java-sdk.version>
30+
</properties>
31+
32+
<developers>
33+
<developer>
34+
<id>amazonwebservices</id>
35+
<organization>Amazon Web Services</organization>
36+
<organizationUrl>https://aws.amazon.com</organizationUrl>
37+
<roles>
38+
<role>developer</role>
39+
</roles>
40+
</developer>
41+
</developers>
42+
43+
<dependencies>
44+
<dependency>
45+
<groupId>software.amazon.payloadoffloading</groupId>
46+
<artifactId>payloadoffloading-common</artifactId>
47+
<version>1.0.0</version>
48+
</dependency>
49+
<dependency>
50+
<groupId>com.amazonaws</groupId>
51+
<artifactId>amazon-sqs-java-extended-client-lib</artifactId>
52+
<version>1.1.0</version>
53+
<type>jar</type>
54+
</dependency>
55+
<dependency>
56+
<groupId>com.amazonaws</groupId>
57+
<artifactId>aws-java-sdk-sns</artifactId>
58+
<version>${aws-java-sdk.version}</version>
59+
</dependency>
60+
<dependency>
61+
<groupId>com.amazonaws</groupId>
62+
<artifactId>aws-java-sdk-s3</artifactId>
63+
<version>${aws-java-sdk.version}</version>
64+
</dependency>
65+
<dependency>
66+
<groupId>junit</groupId>
67+
<artifactId>junit</artifactId>
68+
<version>4.12</version>
69+
<scope>test</scope>
70+
</dependency>
71+
<dependency>
72+
<groupId>org.mockito</groupId>
73+
<artifactId>mockito-core</artifactId>
74+
<version>3.3.3</version>
75+
<scope>test</scope>
76+
</dependency>
77+
<dependency>
78+
<groupId>org.hamcrest</groupId>
79+
<artifactId>hamcrest-all</artifactId>
80+
<version>1.3</version>
81+
<scope>test</scope>
82+
</dependency>
83+
<dependency>
84+
<groupId>pl.pragmatists</groupId>
85+
<artifactId>JUnitParams</artifactId>
86+
<version>1.1.1</version>
87+
<scope>test</scope>
88+
</dependency>
89+
</dependencies>
90+
91+
<build>
92+
<pluginManagement>
93+
<plugins>
94+
<plugin>
95+
<groupId>org.apache.maven.plugins</groupId>
96+
<artifactId>maven-compiler-plugin</artifactId>
97+
<version>3.8.1</version>
98+
<configuration>
99+
<source>1.8</source>
100+
<target>1.8</target>
101+
<encoding>UTF-8</encoding>
102+
</configuration>
103+
</plugin>
104+
</plugins>
105+
</pluginManagement>
106+
<plugins>
107+
<plugin>
108+
<groupId>org.apache.maven.plugins</groupId>
109+
<artifactId>maven-source-plugin</artifactId>
110+
<version>2.2.1</version>
111+
<executions>
112+
<execution>
113+
<id>attach-sources</id>
114+
<goals>
115+
<goal>jar-no-fork</goal>
116+
</goals>
117+
</execution>
118+
</executions>
119+
</plugin>
120+
<plugin>
121+
<groupId>org.apache.maven.plugins</groupId>
122+
<artifactId>maven-javadoc-plugin</artifactId>
123+
<version>2.9.1</version>
124+
<executions>
125+
<execution>
126+
<id>attach-javadocs</id>
127+
<goals>
128+
<goal>jar</goal>
129+
</goals>
130+
</execution>
131+
</executions>
132+
</plugin>
133+
<plugin>
134+
<groupId>org.sonatype.plugins</groupId>
135+
<artifactId>nexus-staging-maven-plugin</artifactId>
136+
<version>1.6.7</version>
137+
<extensions>true</extensions>
138+
<configuration>
139+
<serverId>ossrh</serverId>
140+
<nexusUrl>https://aws.oss.sonatype.org</nexusUrl>
141+
<autoReleaseAfterClose>true</autoReleaseAfterClose>
142+
</configuration>
143+
</plugin>
144+
</plugins>
145+
</build>
146+
147+
<profiles>
148+
<profile>
149+
<id>publishing</id>
150+
<distributionManagement>
151+
<snapshotRepository>
152+
<id>ossrh</id>
153+
<url>https://aws.oss.sonatype.org/content/repositories/snapshots</url>
154+
</snapshotRepository>
155+
<repository>
156+
<id>ossrh</id>
157+
<url>https://aws.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
158+
</repository>
159+
</distributionManagement>
160+
<build>
161+
<plugins>
162+
<plugin>
163+
<groupId>org.apache.maven.plugins</groupId>
164+
<artifactId>maven-gpg-plugin</artifactId>
165+
<version>1.6</version>
166+
<executions>
167+
<execution>
168+
<id>sign-artifacts</id>
169+
<phase>verify</phase>
170+
<goals>
171+
<goal>sign</goal>
172+
</goals>
173+
<configuration>
174+
<gpgArguments>
175+
<gpgArgument>--pinentry-mode</gpgArgument>
176+
<gpgArgument>loopback</gpgArgument>
177+
</gpgArguments>
178+
</configuration>
179+
</execution>
180+
</executions>
181+
</plugin>
182+
</plugins>
183+
</build>
184+
</profile>
185+
</profiles>
186+
</project>

0 commit comments

Comments
 (0)