Package: org.grails.cli.profile.repository

## [Groovy] Class AbstractJarProfileRepository

- org.grails.cli.profile.repository.AbstractJarProfileRepository

- All Implemented Interfaces and Traits:
    ProfileRepository

      @groovy.transform.CompileStatic
      abstract class AbstractJarProfileRepository
      extends java.lang.Object
      implements ProfileRepository

  A repository that loads profiles from JAR files

  Authors:
    Graeme Rocher
  Since:
    3.1

- - ### Nested Class Summary

    Nested classes
    Modifiers | Name | Description
    --- | --- | ---
    `static class` | `AbstractJarProfileRepository.JarProfile` |

  - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `protected static java.lang.String` | `DEFAULT_PROFILE_GROUPID` |
    `protected java.util.List<Profile>` | `allProfiles` |
    `protected java.util.Map<java.lang.String, Profile>` | `profilesByName` |
    `private java.util.Set<java.net.URL>` | `registeredUrls` |

  - ### Constructor Summary

    Constructors
    Constructor and description
    `AbstractJarProfileRepository ()`

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `java.util.List<Profile>` | `getAllProfiles()`
    `` | `Profile` | `getProfile(java.lang.String profileName)`
    `` | `Profile` | `getProfile(java.lang.String profileName, java.lang.Boolean parentProfile)`
    `` | `java.util.List<Profile>` | `getProfileAndDependencies(Profile profile)`
    `` | `org.eclipse.aether.artifact.Artifact` | `getProfileArtifact(java.lang.String profileName)`
    `` | `Resource` | `getProfileDirectory(java.lang.String profile)`
    `` | `protected void` | `registerProfile(java.net.URL url, java.lang.ClassLoader parent)`
    `` | `private void` | `visitTopologicalSort(Profile profile, java.util.List<Profile> sortedProfiles, java.util.Set<Profile> visitedProfiles)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class java.lang.Object` | `java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()`

- - ### Field Detail

    - #### protected static final java.lang.String DEFAULT_PROFILE_GROUPID

    - #### protected final java.util.List<Profile> allProfiles

    - #### protected final java.util.Map<java.lang.String, Profile> profilesByName

    - #### private java.util.Set<java.net.URL> registeredUrls

  - ### Constructor Detail

    - #### AbstractJarProfileRepository()

  - ### Method Detail

    - #### java.util.List<Profile> getAllProfiles()

    - #### @java.lang.Override Profile getProfile(java.lang.String profileName)

    - #### @java.lang.Override Profile getProfile(java.lang.String profileName, java.lang.Boolean parentProfile)

    - #### @java.lang.Override java.util.List<Profile> getProfileAndDependencies(Profile profile)

    - #### org.eclipse.aether.artifact.Artifact getProfileArtifact(java.lang.String profileName)

    - #### @java.lang.Override Resource getProfileDirectory(java.lang.String profile)

    - #### protected void registerProfile(java.net.URL url, java.lang.ClassLoader parent)

    - #### private void visitTopologicalSort(Profile profile, java.util.List<Profile> sortedProfiles, java.util.Set<Profile> visitedProfiles)