org.kie.api.builder

## Interface KieRepository

-     public interface KieRepository

  KieRepository is a singleton acting as a repository for all the available KieModules regardless if they are stored in the maven repository or programmatically built by the user

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addKieModule(KieModule kModule)` Adds a new KieModule to this KieRepository
    `KieModule` | `addKieModule(Resource resource, Resource... dependencies)` Creates a new KieModule using the provided resource and dependencies and automatically adds it to this KieRepository
    `ReleaseId` | `getDefaultReleaseId()` Returns the default ReleaseId used to identify a KieModule in this KieRepository if the user didn't explicitly provide one
    `KieModule` | `getKieModule(ReleaseId releaseId)` Retrieve a KieModule with the given ReleaseId in this KieRepository.
    `KieModule` | `removeKieModule(ReleaseId releaseId)` Remove a no longer useful KieModule, identified by the given ReleaseId, from this KieRepository

- - ### Method Detail

    - #### getDefaultReleaseId

          ReleaseId getDefaultReleaseId()

      Returns the default ReleaseId used to identify a KieModule in this KieRepository if the user didn't explicitly provide one
      Returns:
        The default ReleaseId

    - #### addKieModule

          void addKieModule(KieModule kModule)

      Adds a new KieModule to this KieRepository

    - #### addKieModule

          KieModule addKieModule(Resource resource,
                                 Resource... dependencies)

      Creates a new KieModule using the provided resource and dependencies and automatically adds it to this KieRepository
      Parameters:
        `resource` -
        `dependencies` -
      Returns:
        The newly created KieModule

    - #### getKieModule

          KieModule getKieModule(ReleaseId releaseId)

      Retrieve a KieModule with the given ReleaseId in this KieRepository. It is possible to use maven's conventions and version ranges like in

               KieModule kieModule = kieRepository.getKieModule( KieServices.Factory.get().newReleaseId("group", "artifact", "LATEST") );

      or

               KieModule kieModule = kieRepository.getKieModule( KieServices.Factory.get().newReleaseId("group", "artifact", "[1.0,1.2)") );

      Parameters:
        `releaseId` - The releaseId identifying the KieModule to be returned
      Returns:
        The KieModule identified by the given releaseId or null if such KieModule doesn't exist

    - #### removeKieModule

          KieModule removeKieModule(ReleaseId releaseId)

      Remove a no longer useful KieModule, identified by the given ReleaseId, from this KieRepository
      Parameters:
        `releaseId` - The releaseId identifying the KieModule to be removed
      Returns:
        The removed KieModule or null if such KieModule didn't exist

Copyright © 2001–2020 JBoss by Red Hat. All rights reserved.