Skip to content
This repository was archived by the owner on Sep 13, 2022. It is now read-only.

Commit 8029b9c

Browse files
authored
Release 1.0.0
2 parents 7e4ca5c + 5bfc72d commit 8029b9c

File tree

1,268 files changed

+57116
-40741
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,268 files changed

+57116
-40741
lines changed

CODE_OF_CONDUCT.md

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# Community Code of Conduct
2+
3+
**Version 1.2
4+
August 19, 2020**
5+
6+
## Our Pledge
7+
8+
In the interest of fostering an open and welcoming environment, we as
9+
community members, contributors, committers, and project leaders pledge
10+
to make participation in our project and our community a harassment-free
11+
experience for everyone, regardless of age, body size, disability, ethnicity,
12+
sex characteristics, gender identity and expression, level of experience,
13+
education, socio-economic status, nationality, personal appearance, race,
14+
religion, or sexual identity and orientation.
15+
16+
## Our Standards
17+
18+
Examples of behavior that contributes to creating a positive environment
19+
include:
20+
21+
* Using welcoming and inclusive language
22+
* Being respectful of differing viewpoints and experiences
23+
* Gracefully accepting constructive criticism
24+
* Focusing on what is best for the community
25+
* Showing empathy towards other community members
26+
27+
Examples of unacceptable behavior by participants include:
28+
29+
* The use of sexualized language or imagery and unwelcome sexual attention or
30+
advances
31+
* Trolling, insulting/derogatory comments, and personal or political attacks
32+
* Public or private harassment
33+
* Publishing others' private information, such as a physical or electronic
34+
address, without explicit permission
35+
* Other conduct which could reasonably be considered inappropriate in a
36+
professional setting
37+
38+
## Our Responsibilities
39+
40+
With the support of the Eclipse Foundation staff (the “Staff”), project committers
41+
and leaders are responsible for clarifying the standards of acceptable behavior and
42+
are expected to take appropriate and fair corrective action in response to any
43+
instances of unacceptable behavior.
44+
45+
Project committers and leaders have the right and responsibility to remove, edit,
46+
or reject comments, commits, code, wiki edits, issues, and other contributions that
47+
are not aligned to this Code of Conduct, or to ban temporarily or permanently any
48+
contributor for other behaviors that they deem inappropriate, threatening, offensive,
49+
or harmful.
50+
51+
## Scope
52+
53+
This Code of Conduct applies within all project spaces, and it also applies when an
54+
individual is representing the Eclipse Foundation project or its community in public
55+
spaces. Examples of representing a project or community include posting via an official
56+
social media account, or acting as a project representative at an online or offline
57+
event. Representation of a project may be further defined and clarified by project
58+
committers, leaders, or the EMO.
59+
60+
## Enforcement
61+
62+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported
63+
by contacting the Staff at codeofconduct@eclipse.org. All complaints will be reviewed
64+
and investigated and will result in a response that is deemed necessary and appropriate
65+
to the circumstances. The Staff is obligated to maintain confidentiality with regard to
66+
the reporter of an incident. Further details of specific enforcement policies may be
67+
posted separately.
68+
69+
Project committers or leaders who do not follow the Code of Conduct in good faith may
70+
face temporary or permanent repercussions as determined by the Staff.
71+
72+
## Attribution
73+
74+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
75+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
76+
77+
[homepage]: https://www.contributor-covenant.org
78+
79+
For answers to common questions about this code of conduct, see
80+
https://www.contributor-covenant.org/faq

CONTRIBUTING.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# Contributing to 'Eclipse Keyple' Java implementation
2+
3+
Thanks for your interest in this project.
4+
5+
## Project description
6+
7+
'Eclipse Keyple' Java implementation is a project containing all the content of the Java implementation of the [Eclipse Keyple](https://keyple.org/) API.
8+
9+
* https://github.com/eclipse/keyple-java
10+
11+
## Eclipse Contributor Agreement
12+
13+
Before your contribution can be accepted by the project team contributors must
14+
electronically sign the Eclipse Contributor Agreement (ECA).
15+
16+
* http://www.eclipse.org/legal/ECA.php
17+
18+
Commits that are provided by non-committers must have a Signed-off-by field in
19+
the footer indicating that the author is aware of the terms by which the
20+
contribution has been provided to the project. The non-committer must
21+
additionally have an Eclipse Foundation account and must have a signed Eclipse
22+
Contributor Agreement (ECA) on file.
23+
24+
For more information, please see the Eclipse Committer Handbook:
25+
https://www.eclipse.org/projects/handbook/#resources-commit
26+
27+
## Eclipse Contributor Agreement
28+
29+
Before your contribution can be accepted by the project team contributors must
30+
electronically sign the Eclipse Contributor Agreement (ECA).
31+
32+
* http://www.eclipse.org/legal/ECA.php
33+
34+
Commits that are provided by non-committers must have a Signed-off-by field in
35+
the footer indicating that the author is aware of the terms by which the
36+
contribution has been provided to the project. The non-committer must
37+
additionally have an Eclipse Foundation account and must have a signed Eclipse
38+
Contributor Agreement (ECA) on file.
39+
40+
For more information, please see the Eclipse Committer Handbook:
41+
https://www.eclipse.org/projects/handbook/#resources-commit
42+
43+
## Contribute via Fork
44+
You need a [GitHub](https://github.com/join) and an [Eclipse](https://accounts.eclipse.org/user/register) account for which you signed the [Eclipse Contributor Agreement](https://accounts.eclipse.org/user/login?destination=user/eca).
45+
46+
1. Fork the repository on GitHub
47+
1. Check if there is a [Jira issue](https://keyple.atlassian.net/projects/KEYP) for what you want to work on or create one.
48+
1. Announce in the comments section that you want to work on the issue. Also describe the solution you want to implement. To improve the chances for your contribution to be accepted, you'll want to wait for the feedback of the committers.
49+
1. Create a new branch from *develop* for your changes. Name it after the Jira number, e.g. *KEYP-XXX_[descriptionofchanges]*.
50+
1. Implement your changes.
51+
1. Rebase on *develop*.
52+
1. Run **./gradlew spotlessApply && android/gradlew spotlessApply** to format the code and add licence headers to the files.
53+
1. Run **./gradlew check && android/gradlew check** (to check code formatting and run tests)
54+
1. Commit using [Sign off](https://git-scm.com/docs/git-commit#git-commit--s) with the same email address you are using for your Eclipse account. Use descriptive and meaningful commit messages. In particular, start the first line of the commit message with the number of the issue that the commit addresses, e.g. *KEYP-XXX [descriptionofchanges]*.
55+
1. Push your changes to your forked repository.
56+
1. Create a [pull request (PR)](https://help.github.com/articles/using-pull-requests/) to *develop*.
57+
1. After submitting, do not use your branch for any other development, otherwise further changes that you make will be visible in the PR.
58+
59+
## Contributing for Committers
60+
You're a committer if you have write-access to the Keyple git-repositories.
61+
62+
1. Make sure there is a [Jira issue](https://keyple.atlassian.net/projects/KEYP) for what you want to work on or create one.
63+
1. Assign the issue to yourself.
64+
1. Create a local git branch from *develop*. Name it after the Jira number, e.g. *KEYP-XXX_[descriptionofchanges]*.
65+
1. Implement your changes.
66+
1. Rebase on *develop*.
67+
1. Run **./gradlew spotlessApply && android/gradlew spotlessApply** to format the code and add licence headers to the files.
68+
1. Run **./gradlew check && android/gradlew check** (to check code formatting and run tests)
69+
1. Commit using [Sign off](https://git-scm.com/docs/git-commit#git-commit--s) with the same email address you are using for your Eclipse account. Use descriptive and meaningful commit messages. In particular, start the first line of the commit message with the number of the issue that the commit addresses, e.g. *KEYP-XXX Update Keyple Core Unit tests*.
70+
1. Push the branch into the repository.
71+
1. Create a pull request and ask somebody who is familiar with the code you modified to review it.
72+
1. If the reviewer approves and all checks are OK, merge using squash commit.

Jenkinsfile

Lines changed: 38 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,16 @@ pipeline {
2020
}
2121
steps{
2222
container('java-builder') {
23+
configFileProvider(
24+
[configFile(fileId: 'gradle.properties',
25+
targetLocation: '/home/jenkins/agent/gradle.properties')]) {
26+
sh 'ln -s /home/jenkins/agent/gradle.properties /home/jenkins/.gradle/gradle.properties'
27+
/* Read key Id in gradle.properties */
28+
sh 'head -1 /home/jenkins/.gradle/gradle.properties'
29+
}
2330
withCredentials([
2431
file(credentialsId: 'secret-subkeys.asc',
2532
variable: 'KEYRING')]) {
26-
sh 'ln -s /home/jenkins/agent/gradle.properties /home/jenkins/.gradle/gradle.properties'
27-
2833
/* Import GPG keyring with --batch and trust the keys non-interactively in a shell build step */
2934
sh 'gpg1 --batch --import "${KEYRING}"'
3035
sh 'gpg1 --list-secret-keys'
@@ -33,12 +38,6 @@ pipeline {
3338
sh 'for fpr in $(gpg1 --list-keys --with-colons | awk -F: \'/fpr:/ {print $10}\' | sort -u); do echo -e "5\ny\n" | gpg1 --batch --command-fd 0 --expert --edit-key ${fpr} trust; done'
3439
sh 'ls -l /home/jenkins/.gnupg/'
3540
}
36-
configFileProvider(
37-
[configFile(fileId: 'gradle.properties',
38-
targetLocation: '/home/jenkins/agent/gradle.properties')]) {
39-
/* Read key Id in gradle.properties */
40-
sh 'head -1 /home/jenkins/.gradle/gradle.properties'
41-
}
4241
}
4342
}
4443
}
@@ -85,15 +84,28 @@ pipeline {
8584
steps{
8685
container('java-builder') {
8786
sh 'keytool -genkey -v -keystore ~/.android/debug.keystore -storepass android -alias androiddebugkey -keypass android -dname "CN=Android Debug,O=Android,C=US" -keyalg RSA -keysize 2048 -validity 90'
88-
89-
sh "./gradlew -b java/example/calypso/remotese/build.gradle check -P keyple_version=${keypleVersion}"
90-
91-
dir('java/example/calypso/android/nfc/') {
87+
88+
dir('java/example/generic/android/nfc/') {
9289
sh "./gradlew assembleDebug -P keyple_version=${keypleVersion}"
9390
}
94-
dir('java/example/calypso/android/omapi') {
91+
dir('java/example/generic/android/omapi') {
9592
sh "./gradlew assembleDebug -P keyple_version=${keypleVersion}"
9693
}
94+
dir('java/example/generic/distributed/UseCase7_PoolReaderServerSide_Webservice') {
95+
sh "./gradlew assemble -P keyple_version=${keypleVersion}"
96+
}
97+
dir('java/example/generic/distributed/UseCase1_ReaderClientSide_Webservice') {
98+
sh "./gradlew assemble -P keyple_version=${keypleVersion}"
99+
}
100+
dir('java/example/generic/distributed/UseCase1_ReaderClientSide_Websocket') {
101+
sh "./gradlew assemble -P keyple_version=${keypleVersion}"
102+
}
103+
dir('java/example/calypso') {
104+
sh "./gradlew assemble -P keyple_version=${keypleVersion}"
105+
}
106+
dir('java/example/generic/standalone') {
107+
sh "./gradlew assemble -P keyple_version=${keypleVersion}"
108+
}
97109
}
98110
}
99111
}
@@ -122,7 +134,9 @@ pipeline {
122134
catchError(buildResult: 'SUCCESS', message: 'Unable to log code quality to Sonar.', stageResult: 'FAILURE') {
123135
container('java-builder') {
124136
withCredentials([string(credentialsId: 'sonarcloud-token', variable: 'SONAR_LOGIN')]) {
137+
sh './gradlew --stop'
125138
sh './gradlew codeQuality --info'
139+
sh './gradlew --stop'
126140
}
127141
}
128142
}
@@ -137,7 +151,9 @@ pipeline {
137151
container('java-builder') {
138152
dir('android') {
139153
withCredentials([string(credentialsId: 'sonarcloud-token', variable: 'SONAR_LOGIN')]) {
140-
sh './gradlew codeQuality'
154+
sh './gradlew --stop'
155+
sh './gradlew codeQuality --info'
156+
sh './gradlew --stop'
141157
}
142158
}
143159
}
@@ -156,7 +172,9 @@ pipeline {
156172
sh './gradlew :java:component:keyple-core:uploadArchives ${uploadParams}'
157173
sh './gradlew :java:component:keyple-calypso:uploadArchives ${uploadParams}'
158174
sh './gradlew :java:component:keyple-plugin:keyple-plugin-pcsc:uploadArchives ${uploadParams}'
159-
sh './gradlew :java:component:keyple-plugin:keyple-plugin-remotese:uploadArchives ${uploadParams}'
175+
sh './gradlew :java:component:keyple-distributed:keyple-distributed-network:uploadArchives ${uploadParams}'
176+
sh './gradlew :java:component:keyple-distributed:keyple-distributed-local:uploadArchives ${uploadParams}'
177+
sh './gradlew :java:component:keyple-distributed:keyple-distributed-remote:uploadArchives ${uploadParams}'
160178
sh './gradlew :java:component:keyple-plugin:keyple-plugin-stub:uploadArchives ${uploadParams}'
161179
sh './gradlew --stop'
162180
}
@@ -193,10 +211,12 @@ pipeline {
193211
sh 'cp ./java/component/keyple-calypso/build/libs/keyple-java-calypso*.jar ./repository/java'
194212
sh 'cp ./java/component/keyple-core/build/libs/keyple-java-core*.jar ./repository/java'
195213
sh 'cp ./java/component/keyple-plugin/pcsc/build/libs/keyple-java-plugin*.jar ./repository/java'
196-
sh 'cp ./java/component/keyple-plugin/remotese/build/libs/keyple-java-plugin*.jar ./repository/java'
214+
sh 'cp ./java/component/keyple-distributed/network/build/libs/keyple-java-distributed*.jar ./repository/java'
215+
sh 'cp ./java/component/keyple-distributed/local/build/libs/keyple-java-distributed*.jar ./repository/java'
216+
sh 'cp ./java/component/keyple-distributed/remote/build/libs/keyple-java-distributed*.jar ./repository/java'
197217
sh 'cp ./java/component/keyple-plugin/stub/build/libs/keyple-java-plugin*.jar ./repository/java'
198-
sh 'cp ./java/example/calypso/android/nfc/build/outputs/apk/debug/*.apk ./repository/android'
199-
sh 'cp ./java/example/calypso/android/omapi/build/outputs/apk/debug/*.apk ./repository/android'
218+
sh 'cp ./java/example/generic/android/nfc/build/outputs/apk/debug/*.apk ./repository/android'
219+
sh 'cp ./java/example/generic/android/omapi/build/outputs/apk/debug/*.apk ./repository/android'
200220
sh 'cp ./android/keyple-plugin/android-nfc/build/outputs/aar/keyple-android-plugin*.aar ./repository/android'
201221
sh 'cp ./android/keyple-plugin/android-omapi/build/outputs/aar/keyple-android-plugin*.aar ./repository/android'
202222
sh 'ls -R ./repository'

NOTICE.md

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
# Notices for Keyple Java, Tools for Committers
1+
# Notices for 'Eclipse Keyple' Java implementation
22

3-
This content is produced and maintained by the Eclipse keyple, Tools for
4-
Committers project.
3+
This content is produced and maintained by the Eclipse Keyple project.
54

65
* Project home: https://projects.eclipse.org/projects/iot.keyple
7-
6+
87
## Supported platforms
98
- Java SE 1.6 compact2
109
- Android 4.4 KitKat API level 19
@@ -17,6 +16,12 @@ Committers project.
1716
- example: source for the generic and Calypso implementation examples.
1817
- keyple-integration: source for the integration code (SDK).
1918

19+
## Trademarks
20+
21+
* Eclipse Keyple and the Eclipse Keyple project are Trademarks of the Eclipse Foundation, Inc.
22+
* Eclipse® is a Trademark of the Eclipse Foundation, Inc.
23+
* Eclipse Foundation is a Trademark of the Eclipse Foundation, Inc.
24+
2025
## Copyright
2126

2227
All content is the property of the respective authors or their employers.
@@ -35,18 +40,23 @@ SPDX-License-Identifier: EPL-2.0
3540

3641
The project maintains the following source code repositories:
3742

38-
* https://github.com/eclipse/keyple.git
39-
43+
* https://github.com/eclipse/keyple
44+
* https://github.com/eclipse/keyple-website
45+
* https://github.com/eclipse/keyple-java
46+
* https://github.com/eclipse/keyple-cpp
47+
* https://github.com/eclipse/keyple-ops
4048

4149
## Contributors
4250
* Pierre Terrée - API specification
43-
* Jean-Pierre Fortune - plugin PCSC, keyple Core and Keyple Calypso
44-
* Olivier Delcroix - plugins Android, plugin Remote SE
51+
* Jean-Pierre Fortune - Keyple Core, Keyple Calypso, PCSC plugin and Stub plugin
52+
* Olivier Delcroix - Keyple Distributed and Android plugins
4553
* Florent Clairambault - Keyple Core
46-
* Paulo Barreto - integration and demo
47-
* Meddy Menzikoff - Android plugins and Examples
54+
* Paulo Barreto - Integration and Demo apps
55+
* Meddy Menzikoff - Android plugins and Examples
56+
* Andrei Cristea - Keyple Core, Keyple Distributed and Keyple Calypso
57+
* Youssef Amrani - Android plugins and demo apps
58+
* Brice Ruppen - DevOps
4859

49-
5060
## Third-party Content
5161

5262
Google Gson (2.2.4)

0 commit comments

Comments
 (0)