finAPI Java client

True-OOP Java client for finAPI

License

License

Categories

Categories

Java Languages CLI User Interface
GroupId

GroupId

org.proshin
ArtifactId

ArtifactId

finapi-java-client
Last Version

Last Version

0.1.116
Release Date

Release Date

Type

Type

jar
Description

Description

finAPI Java client
True-OOP Java client for finAPI
Project URL

Project URL

https://github.com/proshin-roman/finapi-java-client
Source Code Management

Source Code Management

https://github.com/proshin-roman/finapi-java-client

Download finapi-java-client

How to add to project

<!-- https://jarcasting.com/artifacts/org.proshin/finapi-java-client/ -->
<dependency>
    <groupId>org.proshin</groupId>
    <artifactId>finapi-java-client</artifactId>
    <version>0.1.116</version>
</dependency>
// https://jarcasting.com/artifacts/org.proshin/finapi-java-client/
implementation 'org.proshin:finapi-java-client:0.1.116'
// https://jarcasting.com/artifacts/org.proshin/finapi-java-client/
implementation ("org.proshin:finapi-java-client:0.1.116")
'org.proshin:finapi-java-client:jar:0.1.116'
<dependency org="org.proshin" name="finapi-java-client" rev="0.1.116">
  <artifact name="finapi-java-client" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.proshin', module='finapi-java-client', version='0.1.116')
)
libraryDependencies += "org.proshin" % "finapi-java-client" % "0.1.116"
[org.proshin/finapi-java-client "0.1.116"]

Dependencies

compile (7)

Group / Artifact Type Version
org.cactoos : cactoos jar 0.49
org.apache.httpcomponents : httpclient jar 4.5.13
org.json : json jar 20201115
com.google.code.findbugs : jsr305 jar 3.0.2
org.slf4j : slf4j-api jar 1.7.30
ch.qos.logback : logback-classic jar 1.2.3
org.springframework : spring-web jar 5.3.4

test (5)

Group / Artifact Type Version
org.junit.jupiter : junit-jupiter-api jar 5.7.1
org.junit.jupiter : junit-jupiter-engine jar 5.7.1
org.junit.jupiter : junit-jupiter-params jar 5.7.1
org.assertj : assertj-core jar 3.19.0
org.mock-server : mockserver-junit-jupiter jar 5.11.2

Project Modules

There are no modules declared in this project.

⚠️ Development and maintenance of this project is over. Thank you all who were using it and even contributing into it!

Feel free to fork it and continue the project under your name. If you decide to do so - write me an email and I will put a link to your repo here!


EO principles respected here We recommend IntelliJ IDEA

winner

License

Releases

Maven Central FOSSA Status

Builds

Build Status Build status

Code quality

codecov Coverage Status codebeat badge SonarCloud CodeFactor Hits-of-Code

Puzzle Driven Development

PDD status

Community

Join the chat at https://gitter.im/finapi-java-client/Lobby

finapi-java-client is a true-OOP Java client for API provided by finAPI.

Principles

The project is following the next principles (it is a subset of those ones):

  • No null
  • No getters and setters
  • No mutable objects
  • No static methods, not even private ones
  • No instanceof, type casting or reflection
  • No implementation inheritance

All badges are through iwillfailyou

nullfree status staticfree status allfinal status allpublic status

How to use

Just add the following lines into your pom.xml

<dependency>
  <groupId>org.proshin</groupId>
  <artifactId>finapi-java-client</artifactId>
  <version>${version}</version>
</dependency>

You can find the latest version on Releases page.

What about logging?

The library uses Logback for logging. As well you can enable logging of the Apache HTTP client library by specifying command line parameters (read this for more details):

-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
-Dorg.apache.commons.logging.simplelog.showdatetime=true
-Dorg.apache.commons.logging.simplelog.log.org.apache.http=DEBUG
-Dorg.apache.commons.logging.simplelog.log.org.apache.http.wire=ERROR

How to contribute

Just fork the repo and send a pull request.

Make sure your branch builds without any warnings/issues:

mvn clean install

How to release

Push a new annotated tag. Here is an example of the command:

git tag -a v0.1.107 -m "Release v0.1.107" 53901d

Versioning is done using jgitver tool, so it will use the new tag as a base of the version.

License

Copyright 2018-2019 Roman Proshin

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

FOSSA Status

Versions

Version
0.1.116
0.1.115
0.1.107
0.1.94
0.1.92
0.1.73
0.1.72
0.1.71
0.1.70
0.1.69
0.1.68
0.1.67
0.1.66
0.1.65
0.1.64
0.1.63
0.1.62
0.1.61
0.1.60
0.1.59