Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
###############################
# Git Line Endings #
###############################

* text=auto

# CRLF for Windows files.
*.{cmd,[cC][mM][dD]} text eol=crlf
*.{bat,[bB][aA][tT]} text eol=crlf
*.cs text eol=crlf diff=csharp

# LF for Linux files.
*.sh text eol=lf

# Common files
*.java text eol=lf diff=java
*.html text eol=lf diff=html
*.css text eol=lf
*.js text eol=lf
*.sql text eol=lf

###############################
# Git Large File System (LFS) #
###############################

# Archives
*.7z filter=lfs diff=lfs merge=lfs -text
*.br filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text

# Documents
*.pdf filter=lfs diff=lfs merge=lfs -text
*.docx diff=astextplain merge=lfs -text

# Images
*.gif filter=lfs diff=lfs merge=lfs -text
*.ico filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.psd filter=lfs diff=lfs merge=lfs -text
*.webp filter=lfs diff=lfs merge=lfs -text

# Fonts
*.woff2 filter=lfs diff=lfs merge=lfs -text

# Other
*.exe filter=lfs diff=lfs merge=lfs -text
9 changes: 9 additions & 0 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: Build and Test

on:
pull_request:
branches: [main]

jobs:
build-and-test:
uses: eclipse-keypop/keypop-actions/.github/workflows/reusable-build-and-test.yml@main # NOSONAR - Same organization, trusted source
10 changes: 10 additions & 0 deletions .github/workflows/publish-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: Publish Release package

on:
release:
types: [published]

jobs:
publish-release:
uses: eclipse-keypop/keypop-actions/.github/workflows/reusable-publish-release.yml@main # NOSONAR - Same organization, trusted source
secrets: inherit # NOSONAR - Same organization, trusted source
10 changes: 10 additions & 0 deletions .github/workflows/publish-snapshot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: Publish Snapshot package

on:
push:
branches: [main]

jobs:
publish-snapshot:
uses: eclipse-keypop/keypop-actions/.github/workflows/reusable-publish-snapshot.yml@main # NOSONAR - Same organization, trusted source
secrets: inherit # NOSONAR - Same organization, trusted source
43 changes: 43 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Java class files
*.class

# Generated files
gen/
out/
release/

# Gradle
.gradle/
build/

# Eclipse
.classpath
.project
.settings/
bin/

# IntelliJ IDEA
.idea/
*.iml
*.iws
*.ipr

# Visual Studio Code
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

# MacOS
.DS_Store

# Linux
*~

# Windows
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
*.stackdump
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

[unreleased]: https://github.com/eclipse-keypop/keypop-calypso-certificate-java-api/compare/0.1.0...HEAD
93 changes: 93 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# Community Code of Conduct

**Version 2.0
January 1, 2023**

## Our Pledge

In the interest of fostering an open and welcoming environment, we as community members, contributors, Committers[^1], and Project Leads (collectively "Contributors") pledge to make participation in our projects and our community a harassment-free and inclusive experience for everyone.

This Community Code of Conduct ("Code") outlines our behavior expectations as members of our community in all Eclipse Foundation activities, both offline and online. It is not intended to govern scenarios or behaviors outside of the scope of Eclipse Foundation activities. Nor is it intended to replace or supersede the protections offered to all our community members under the law. Please follow both the spirit and letter of this Code and encourage other Contributors to follow these principles into our work. Failure to read or acknowledge this Code does not excuse a Contributor from compliance with the Code.

## Our Standards

Examples of behavior that contribute to creating a positive and professional environment include:

- Using welcoming and inclusive language;
- Actively encouraging all voices;
- Helping others bring their perspectives and listening actively. If you find yourself dominating a discussion, it is especially important to encourage other voices to join in;
- Being respectful of differing viewpoints and experiences;
- Gracefully accepting constructive criticism;
- Focusing on what is best for the community;
- Showing empathy towards other community members;
- Being direct but professional; and
- Leading by example by holding yourself and others accountable

Examples of unacceptable behavior by Contributors include:

- The use of sexualized language or imagery;
- Unwelcome sexual attention or advances;
- Trolling, insulting/derogatory comments, and personal or political attacks;
- Public or private harassment, repeated harassment;
- Publishing others' private information, such as a physical or electronic address, without explicit permission;
- Violent threats or language directed against another person;
- Sexist, racist, or otherwise discriminatory jokes and language;
- Posting sexually explicit or violent material;
- Sharing private content, such as emails sent privately or non-publicly, or unlogged forums such as IRC channel history;
- Personal insults, especially those using racist or sexist terms;
- Excessive or unnecessary profanity;
- Advocating for, or encouraging, any of the above behavior; and
- Other conduct which could reasonably be considered inappropriate in a professional setting

## Our Responsibilities

With the support of the Eclipse Foundation employees, consultants, officers, and directors (collectively, the "Staff"), Committers, and Project Leads, the Eclipse Foundation Conduct Committee (the "Conduct Committee") is responsible for clarifying the standards of acceptable behavior. The Conduct Committee takes appropriate and fair corrective action in response to any instances of unacceptable behavior.

## Scope

This Code applies within all Project, Working Group, and Interest Group spaces and communication channels of the Eclipse Foundation (collectively, "Eclipse spaces"), within any Eclipse-organized event or meeting, and in public spaces when an individual is representing an Eclipse Foundation Project, Working Group, Interest Group, or their communities. Examples of representing a Project or community include posting via an official social media account, personal accounts, or acting as an appointed representative at an online or offline event. Representation of Projects, Working Groups, and Interest Groups may be further defined and clarified by Committers, Project Leads, or the Staff.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the Conduct Committee via conduct@eclipse-foundation.org. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. Without the explicit consent of the reporter, the Conduct Committee is obligated to maintain confidentiality with regard to the reporter of an incident. The Conduct Committee is further obligated to ensure that the respondent is provided with sufficient information about the complaint to reply. If such details cannot be provided while maintaining confidentiality, the Conduct Committee will take the respondent‘s inability to provide a defense into account in its deliberations and decisions. Further details of enforcement guidelines may be posted separately.

Staff, Committers and Project Leads have the right to report, remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code, or to block temporarily or permanently any Contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. Any such actions will be reported to the Conduct Committee for transparency and record keeping.

Any Staff (including officers and directors of the Eclipse Foundation), Committers, Project Leads, or Conduct Committee members who are the subject of a complaint to the Conduct Committee will be recused from the process of resolving any such complaint.

## Responsibility

The responsibility for administering this Code rests with the Conduct Committee, with oversight by the Executive Director and the Board of Directors. For additional information on the Conduct Committee and its process, please write to <conduct@eclipse-foundation.org>.

## Investigation of Potential Code Violations

All conflict is not bad as a healthy debate may sometimes be necessary to push us to do our best. It is, however, unacceptable to be disrespectful or offensive, or violate this Code. If you see someone engaging in objectionable behavior violating this Code, we encourage you to address the behavior directly with those involved. If for some reason, you are unable to resolve the matter or feel uncomfortable doing so, or if the behavior is threatening or harassing, please report it following the procedure laid out below.

Reports should be directed to <conduct@eclipse-foundation.org>. It is the Conduct Committee’s role to receive and address reported violations of this Code and to ensure a fair and speedy resolution.

The Eclipse Foundation takes all reports of potential Code violations seriously and is committed to confidentiality and a full investigation of all allegations. The identity of the reporter will be omitted from the details of the report supplied to the accused. Contributors who are being investigated for a potential Code violation will have an opportunity to be heard prior to any final determination. Those found to have violated the Code can seek reconsideration of the violation and disciplinary action decisions. Every effort will be made to have all matters disposed of within 60 days of the receipt of the complaint.

## Actions
Contributors who do not follow this Code in good faith may face temporary or permanent repercussions as determined by the Conduct Committee.

This Code does not address all conduct. It works in conjunction with our [Communication Channel Guidelines](https://www.eclipse.org/org/documents/communication-channel-guidelines/), [Social Media Guidelines](https://www.eclipse.org/org/documents/social_media_guidelines.php), [Bylaws](https://www.eclipse.org/org/documents/eclipse-foundation-be-bylaws-en.pdf), and [Internal Rules](https://www.eclipse.org/org/documents/ef-be-internal-rules.pdf) which set out additional protections for, and obligations of, all contributors. The Foundation has additional policies that provide further guidance on other matters.

It’s impossible to spell out every possible scenario that might be deemed a violation of this Code. Instead, we rely on one another’s good judgment to uphold a high standard of integrity within all Eclipse Spaces. Sometimes, identifying the right thing to do isn’t an easy call. In such a scenario, raise the issue as early as possible.

## No Retaliation

The Eclipse community relies upon and values the help of Contributors who identify potential problems that may need to be addressed within an Eclipse Space. Any retaliation against a Contributor who raises an issue honestly is a violation of this Code. That a Contributor has raised a concern honestly or participated in an investigation, cannot be the basis for any adverse action, including threats, harassment, or discrimination. If you work with someone who has raised a concern or provided information in an investigation, you should continue to treat the person with courtesy and respect. If you believe someone has retaliated against you, report the matter as described by this Code. Honest reporting does not mean that you have to be right when you raise a concern; you just have to believe that the information you are providing is accurate.

False reporting, especially when intended to retaliate or exclude, is itself a violation of this Code and will not be accepted or tolerated.

Everyone is encouraged to ask questions about this Code. Your feedback is welcome, and you will get a response within three business days. Write to <conduct@eclipse-foundation.org>.

## Amendments

The Eclipse Foundation Board of Directors may amend this Code from time to time and may vary the procedures it sets out where appropriate in a particular case.

### Attribution

This Code was inspired by the [Contributor Covenant](https://www.contributor-covenant.org/), version 1.4, available [here](https://www.contributor-covenant.org/version/1/4/code-of-conduct/).

[^1]: Capitalized terms used herein without definition shall have the meanings assigned to them in the Bylaws.
43 changes: 43 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Contributing to 'Eclipse Keypop'

**Welcome to the Eclipse Keypop Community!**

We are thrilled to have you onboard and look forward to your contributions. Whether you're a coder, designer,
documenter, or enthusiast, your involvement is invaluable to us. Here's how you can start contributing to Eclipse
Keypop:

## Quick Start

1. **Read the Contribution Guidelines**: Before starting, please visit our detailed contributing guide at the
[Eclipse Keypop Contribution Guide](https://keypop.org/community/contributing/).
This guide covers all the necessary information about contributing to the project.

2. **Join the mailing list**: Connect with other contributors on our
[mailing list](https://accounts.eclipse.org/mailing-list/keypop-dev/).
It's a great place to ask questions, share ideas, and collaborate.

3. **Explore Open Issues**: Check out the issues tab in our GitHub repository.

## How to Contribute

- **Code**: Submit pull requests with bug fixes, new features, and improvements. Make sure to follow the code style and
testing guidelines.

- **Documentation**: Help us improve our documentation by fixing errors, adding examples, or writing tutorials.

- **Feedback**: Share your experience using Eclipse Keypop. Feedback on usability, features, and your overall experience
is incredibly valuable.

- **Community Support**: Answer questions on the community forums, help with user support, and participate in
discussions.

## Need Help?

If you have any questions or need assistance, please reach out on the
[mailing list](https://accounts.eclipse.org/mailing-list/keypop-dev/).

---

_Your contribution is the key to the success of Eclipse Keypop. Let's build something amazing together!_

---
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2024 Calypso Networks Association

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
11 changes: 11 additions & 0 deletions LICENSE_HEADER
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/* **************************************************************************************
* Copyright (c) $YEAR Calypso Networks Association https://calypsonet.org/
*
* See the NOTICE file(s) distributed with this work for additional information
* regarding copyright ownership.
*
* This program and the accompanying materials are made available under the terms of the
* MIT License which is available at https://opensource.org/licenses/MIT
*
* SPDX-License-Identifier: MIT
************************************************************************************** */
34 changes: 34 additions & 0 deletions NOTICE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Notices for 'Eclipse Keypop' Java implementation

This content is produced and maintained by the Eclipse Keypop project.

* Project home: https://projects.eclipse.org/projects/iot.keypop

## Supported platforms

* Java 1.8
* Android 7.0 Nougat API Level 24

## Trademarks

* Eclipse Keypop and the Eclipse Keypop project are Trademarks of the Eclipse Foundation, Inc.
* Eclipse® is a Trademark of the Eclipse Foundation, Inc.
* Eclipse Foundation is a Trademark of the Eclipse Foundation, Inc.

## Copyright

All content is the property of the respective authors or their employers.
For more information regarding authorship of content, please consult the
listed source code repository logs.

## Declared Project Licenses

This program and the accompanying materials are made available under the terms
of the MIT License which is available at
https://opensource.org/license/mit/

SPDX-License-Identifier: MIT

## Third-party Content

No third-party content.
18 changes: 18 additions & 0 deletions PUBLISHERS.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
url: https://github.com/eclipse-keypop/keypop-calypso-certificate-java-api
organization:
name: Eclipse Keypop
url: https://keypop.org/
licenses:
- name: MIT license
url: https://opensource.org/license/mit/
distribution: repo
developers:
- name: Keypop Contributors
email: keypop-dev@eclipse.org
scm:
connection: scm:git:git://github.com/eclipse-keypop/keypop-calypso-certificate-java-api.git
developerConnection: scm:git:https://github.com/eclipse-keypop/keypop-calypso-certificate-java-api.git
url: https://github.com/eclipse-keypop/keypop-calypso-certificate-java-api
ciManagement:
system: Jenkins
url: https://ci.eclipse.org/keypop/job/Keypop/job/keypop-calypso-certificate-java-api/
25 changes: 23 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,23 @@
# keypop-calypso-certificate-java-api
Eclipse Keypop project repository containing a Java implementation of the 'Calypso Certificate API' standardized by the Calypso Networks association for ticketing terminal processing smart card
# Keypop Calypso Certificate Java API

## Overview

This repository contains a Java implementation aligned with the **Terminal Calypso Certificate** specifications
proposed by the [Calypso Networks Association](https://www.calypsonet.org). It defines the generic interfaces required
to create Calypso certificates.

## Documentation & Contribution Guide

The full documentation, including the **user guide**, **download information** and **contribution guide**, is available
on the Keypop website [keypop.org](https://keypop.org/).

## API documentation

API Javadoc is available [here](https://docs.keypop.org/keypop-calypso-certificate-java-api).

UML class diagram is available
[here](https://terminal-api.calypsonet.org/apis/calypsonet-terminal-calypso-certificate-api/).

## About the source code

The code is built with **Gradle** and is compliant with **Java 1.6** in order to address a wide range of applications.
Loading
Loading