JBoss Stacks Parser

This project contains a full stacks client with parser capabilities and other features like download, proxy and local cache.

License

License

Categories

Categories

JBoss Container Application Servers CLI User Interface
GroupId

GroupId

org.jboss.jdf
ArtifactId

ArtifactId

stacks-client
Last Version

Last Version

1.0.3.Final
Release Date

Release Date

Type

Type

jar
Description

Description

JBoss Stacks Parser
This project contains a full stacks client with parser capabilities and other features like download, proxy and local cache.
Project URL

Project URL

http://www.jboss.org
Source Code Management

Source Code Management

http://github.com/jboss-developer/jboss-stacks-client

Download stacks-client

How to add to project

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

Dependencies

compile (3)

Group / Artifact Type Version
org.yaml : snakeyaml jar 1.13
org.apache.httpcomponents : httpclient jar 4.0.1
org.jboss.logging : jboss-logging jar 3.1.2.GA

test (1)

Group / Artifact Type Version
junit : junit jar 4.10

Project Modules

There are no modules declared in this project.

JDF JBoss Stacks Client API

What is it?

This a client for JBoss Stacks YAML file.

How to use this API ?

If you need to convert the stack.yaml file to Java Objects add the following dependency to your project

    <dependency>
        <groupId>org.jboss.jdf</groupId>
        <artifactId>stacks-client</artifactId>
        <version>1.0.4-SNAPSHOT</version>
    </dependency>

Then you can use the stacks-client API:

    StacksClient stacksClient = new StacksClient();
    Stacks stacks = stacksClient.getStacks();

When you get the Stacks the stacks-client will retrieve the Stacks.yaml file from its repository and cache it locally. The cache will be updated once a day (24 hours since last update)

With the stacks object, you can navigate on the stacks graph. For more information take a look at the Stacks format diagram

Examples:

    // Get The Available Archetypes
    stacks.getAvailableArchetypes();
    
    // Get all BOMs from a Runtime 
    stacks.getAvailableRuntimes().get(0).getBoms();
    
    //Get the Download URL from the Recommended Runtime from a Major Release (AS7 for example)
    stacks.getMajorReleases().get(0).getRecommendedRuntime().getDownloadUrl(); 

    //Get the BOM name of the Default BOM from a Runtime
    stacks.getAvailableRuntimes().get(0).getDefaultBom().getBom().getName(); 

Advances JBoss Stacks Client configuration

The stacks-client can be configured through the StacksClientConfiguration interface.

You can implement this class and pass it on the constructor of the StacksClient

Example:

    MyConfiguration myConfig = new MyConfiguration();
    StacksClient stacksClient = new StacksClient(myConfig);

If no configuration is supplied, StacksClient will use 'DefaultStacksClientConfiguration' class with de following values:

  • url: The URL of stacks yaml file repository.

    You can use JVM jdf.stacks.client.repo System property to set the url repo value. Ex.: java -Djdf.stacks.client.repo

  • proxyHost: Proxy host to use. Default: null

  • proxyPort: Proxy port to use. Default: null

  • proxyUser: Proxy user to use. If proxy uses Authenticantion. Default: null

  • proxyPassword: Proxy password to use. If proxy uses Authenticantion. Default: null

  • online: Flag that indicates if the system should be used online/offline. Default: true

  • cacheRefreshPeriodSeconds: Time in seconds to keep the cache information: Default to 86400 (24 hours)

At any moment will can retrieve the information by calling:

    stacksClient.getActualConfiguration();

Displaying the Stacks messages on your UI

If you need to get the messages from stacks-client you can provide your own implementation of 'StacksClientMessages' interface and use it on the StacksClient constructor.

Example:

    MyConfiguration myConfig = new MyConfiguration();
    MyMessageWay myMsg = new MyMessageWay();
    StacksClient stacksClient = new StacksClient(myConfig, myMsg);
org.jboss.jdf

JBoss Developer

Versions

Version
1.0.3.Final
1.0.3.CR1
1.0.2.Final
1.0.2.CR4
1.0.2.CR3
1.0.2.CR2
1.0.2.CR1
1.0.1.Final
1.0.0.Final
1.0.0.CR4
1.0.0.CR2
1.0.0.CR1