Package org.apache.sling.feature.cpconverter.features

## Interface FeaturesManager

All Known Implementing Classes:
  `DefaultFeaturesManager`

    public interface FeaturesManager

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addAPIRegionExport​(@Nullable String runMode, @NotNull String exportedPackage)`
`void` `addArtifact​(@Nullable String runMode, @NotNull org.apache.sling.feature.ArtifactId id)`
`void` `addArtifact​(@Nullable String runMode, @NotNull org.apache.sling.feature.Artifact artifact, @Nullable Integer startOrder)`
`void` `addConfiguration​(@Nullable String runMode, @NotNull org.apache.sling.feature.Configuration cfg, @NotNull String path, @NotNull Dictionary<String,​Object> configurationProperties)` Add a configuration
`void` `addOrAppendOakIndexDefinitionsExtension​(String source, String text)`
`void` `addOrAppendRepoInitExtension​(@NotNull String source, @NotNull String text, @Nullable String runMode)` Add repoinit instructions
`@NotNull Map<String,​String>` `getNamespaceUriByPrefix()`
`@NotNull org.apache.sling.feature.Feature` `getRunMode​(@Nullable String runMode)`
`@Nullable org.apache.sling.feature.Feature` `getTargetFeature()`
`void` `init​(@NotNull org.apache.sling.feature.ArtifactId packageId)`
`void` `serialize()`

### Method Detail

#### init

    void init​(@NotNull
              @NotNull org.apache.sling.feature.ArtifactId packageId)

#### getTargetFeature

    @Nullable
    @Nullable org.apache.sling.feature.Feature getTargetFeature()

#### getRunMode

    @NotNull
    @NotNull org.apache.sling.feature.Feature getRunMode​(@Nullable
                                                         @Nullable String runMode)

#### addArtifact

    void addArtifact​(@Nullable
                     @Nullable String runMode,
                     @NotNull
                     @NotNull org.apache.sling.feature.ArtifactId id)

#### addArtifact

    void addArtifact​(@Nullable
                     @Nullable String runMode,
                     @NotNull
                     @NotNull org.apache.sling.feature.Artifact artifact,
                     @Nullable
                     @Nullable Integer startOrder)

#### addAPIRegionExport

    void addAPIRegionExport​(@Nullable
                            @Nullable String runMode,
                            @NotNull
                            @NotNull String exportedPackage)

#### addConfiguration

    void addConfiguration​(@Nullable
                          @Nullable String runMode,
                          @NotNull
                          @NotNull org.apache.sling.feature.Configuration cfg,
                          @NotNull
                          @NotNull String path,
                          @NotNull
                          @NotNull Dictionary<String,​Object> configurationProperties)
                   throws IOException,
                          ConverterException

Add a configuration

Parameters:
  `runMode` - Optional runmode
  `cfg` - The configuration object for the pid and factory pid, name - no properties
  `path` - The path for the configuration
  `configurationProperties` - The configuration properties
Throws:
  `IOException` - if an error occurs
  `ConverterException` - if conversion fails

#### serialize

    void serialize()
            throws IOException

Throws:
  `IOException`

#### addOrAppendRepoInitExtension

    void addOrAppendRepoInitExtension​(@NotNull
                                      @NotNull String source,
                                      @NotNull
                                      @NotNull String text,
                                      @Nullable
                                      @Nullable String runMode)
                               throws IOException,
                                      ConverterException

Add repoinit instructions

Parameters:
  `source` - An identifier for the source, for example the configuration pid
  `text` - The repoinit instructions
  `runMode` - Optional runmode
Throws:
  `IOException` - if an error occurs
  `ConverterException` - if conversion fails

#### addOrAppendOakIndexDefinitionsExtension

    void addOrAppendOakIndexDefinitionsExtension​(String source,
                                                 String text)
                                          throws IOException,
                                                 ConverterException

Throws:
  `IOException`
  `ConverterException`

#### getNamespaceUriByPrefix

    @NotNull
    @NotNull Map<String,​String> getNamespaceUriByPrefix()