Skip to content

Commit

Permalink
- check 3
Browse files Browse the repository at this point in the history
  • Loading branch information
pefernan committed Feb 16, 2024
1 parent eeb000d commit ff3f534
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,40 +22,42 @@
import io.quarkus.deployment.annotations.BuildStep;
import io.quarkus.deployment.annotations.Produce;
import io.quarkus.deployment.pkg.builditem.ArtifactResultBuildItem;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
* You don't need to point to a particular engine if your add-on fits any set of it.
* Just by extending this class, it will make any of {@link KogitoCapability#ENGINES} to be presented.
* You don't need to point to a particular engine if your add-on fits any set of it. Just by extending this class, it will make any of {@link KogitoCapability#ENGINES} to be presented.
* <p/>
* If you need a particular set of {@link KogitoCapability} to be presented, please use {@link RequireCapabilityKogitoAddOnProcessor} instead.
*
* @see <a href="https://quarkus.io/guides/capabilities">Quarkus Extension Capabilities</a>
*/
public abstract class AnyEngineKogitoAddOnProcessor {
static Logger logger = LoggerFactory.getLogger(AnyEngineKogitoAddOnProcessor.class);

/**
* Verifies if one of the {@link KogitoCapability#ENGINES} are present in the classpath.
*
*
* @param capabilities
*/
@BuildStep
@Produce(ArtifactResultBuildItem.class)
void verifyCapabilities(final Capabilities capabilities) {
System.out.println("#################################################");
System.out.println("#################################################");
logger.debug("#################################################");
logger.debug("#################################################");

System.out.println("ENGINES:");
KogitoCapability.ENGINES.forEach( engine -> System.out.println(engine.getCapability() + " - " + engine.getOfferedBy()));
logger.debug("ENGINES:");
KogitoCapability.ENGINES.forEach(engine -> logger.debug(engine.getCapability() + " - " + engine.getOfferedBy()));

System.out.println("Quarkus Capabilities:");
logger.debug("Quarkus Capabilities:");
capabilities.getCapabilities().forEach(System.out::println);

if (KogitoCapability.ENGINES.stream().noneMatch(kc -> capabilities.isPresent(kc.getCapability()))) {
throw this.exceptionForEngineNotPresent();
}

System.out.println("#################################################");
System.out.println("#################################################");
logger.debug("#################################################");
logger.debug("#################################################");
}

private IllegalStateException exceptionForEngineNotPresent() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@
*/
package org.kie.kogito.quarkus.addons.common.deployment;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.List;

import static java.util.Arrays.asList;
Expand All @@ -27,6 +30,8 @@
*/
public final class KogitoCapability {

static Logger logger = LoggerFactory.getLogger(KogitoCapability.class);

public static final String KOGITO_GROUP_ID = "org.kie.kogito";
public static final KogitoCapability DECISIONS = new KogitoCapability("org.drools.decisions", "kogito-quarkus-decisions");
public static final KogitoCapability PROCESSES = new KogitoCapability("org.jbpm.processes", "kogito-quarkus-processes");
Expand All @@ -41,6 +46,13 @@ public final class KogitoCapability {
KogitoCapability.RULES,
KogitoCapability.SERVERLESS_WORKFLOW);

static {
logger.debug("-----------------------");
logger.debug("INIT KogitoCapability:");
ENGINES.forEach(engine -> logger.debug(engine.getCapability() + "-" + engine.getOfferedBy()));
logger.debug("-----------------------");
}

private final String capability;
private final String offeredBy;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,19 +121,6 @@
</dependency>

<!-- this is used implicitly by quarkus tests so let's make Maven aware of it -->
<dependency>
<groupId>org.kie.kogito</groupId>
<artifactId>kogito-addons-quarkus-common-deployment</artifactId>
<version>${project.version}</version>
<scope>test</scope>
<type>pom</type>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.kie.kogito</groupId>
<artifactId>kogito-quarkus-serverless-workflow-deployment</artifactId>
Expand Down

0 comments on commit ff3f534

Please sign in to comment.