diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsComplexPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsComplexPackagingElement.java index 1be7830349d5..6a52870e3b8d 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsComplexPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsComplexPackagingElement.java @@ -18,6 +18,9 @@ package org.jetbrains.jps.model.artifact.elements; import java.util.List; /** + * Represents a synthetic node which is substituted by a collection of other elements when the artifact is being built. E.g. a node which + * represents a Java library is substituted by {@link JpsFileCopyPackagingElement} for its JAR files. + * * @author nik */ public interface JpsComplexPackagingElement extends JpsPackagingElement { diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsCompositePackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsCompositePackagingElement.java index 586a80516b82..8fd7ac82be34 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsCompositePackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsCompositePackagingElement.java @@ -20,9 +20,14 @@ import org.jetbrains.annotations.NotNull; import java.util.List; /** + * Represents a {@link JpsDirectoryPackagingElement directory} or an {@link JpsArchivePackagingElement archive} node in the output layout. + * * @author nik */ public interface JpsCompositePackagingElement extends JpsPackagingElement { + /** + * @return list of nodes representing top-level content of this directory or archive + */ @NotNull List getChildren(); diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsDirectoryCopyPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsDirectoryCopyPackagingElement.java index f6c3db6d5421..93341ce72e87 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsDirectoryCopyPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsDirectoryCopyPackagingElement.java @@ -16,6 +16,9 @@ package org.jetbrains.jps.model.artifact.elements; /** + * Represents 'Copy of directory contents' node in the output layout tree. When the artifact is being built all files from the specified directory + * will be copied or packed to the corresponding place under the artifact output directory. + * * @author nik */ public interface JpsDirectoryCopyPackagingElement extends JpsPackagingElement { diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsExtractedDirectoryPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsExtractedDirectoryPackagingElement.java index 2d2a6ec9898b..2819d36f7e68 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsExtractedDirectoryPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsExtractedDirectoryPackagingElement.java @@ -16,6 +16,9 @@ package org.jetbrains.jps.model.artifact.elements; /** + * Represents 'extracted directory' node in the output layout tree. When the artifact is being built all files in the specified directory inside + * the specified archive will be copied or packed to the corresponding place under the artifact output directory. + * * @author nik */ public interface JpsExtractedDirectoryPackagingElement extends JpsPackagingElement { diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsFileCopyPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsFileCopyPackagingElement.java index b98f970e2bfb..5da003916ed7 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsFileCopyPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsFileCopyPackagingElement.java @@ -16,6 +16,9 @@ package org.jetbrains.jps.model.artifact.elements; /** + * Represents 'Copy of file' node in the output layout tree. When the artifact is being built the specified file will be copied or packed (optionally under + * different name) to the corresponding place under the artifact output directory. + * * @author nik */ public interface JpsFileCopyPackagingElement extends JpsPackagingElement { diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsLibraryFilesPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsLibraryFilesPackagingElement.java index 1f50f533589b..e70b06aa614b 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsLibraryFilesPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsLibraryFilesPackagingElement.java @@ -19,6 +19,9 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.jps.model.library.JpsLibraryReference; /** + * Represents 'library files' node in the output layout tree. When the artifact is being built the 'classes' roots of the specified library will be + * copied or packed to the corresponding place under the artifact output directory. + * * @author nik */ public interface JpsLibraryFilesPackagingElement extends JpsPackagingElement { diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsModuleOutputPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsModuleOutputPackagingElement.java index 3a49d95fd38d..14d57f51b483 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsModuleOutputPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsModuleOutputPackagingElement.java @@ -20,6 +20,9 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jps.model.module.JpsModuleReference; /** + * Represents 'module output' node in the output layout tree. When the artifact is being built the output of the specified module will be copied or + * packed to the corresponding place under the artifact output directory. + * * @author nik */ public interface JpsModuleOutputPackagingElement extends JpsPackagingElement { diff --git a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsPackagingElement.java b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsPackagingElement.java index ed40b81a3502..a528c774d6d9 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsPackagingElement.java +++ b/jps/model-api/src/org/jetbrains/jps/model/artifact/elements/JpsPackagingElement.java @@ -18,6 +18,13 @@ package org.jetbrains.jps.model.artifact.elements; import org.jetbrains.jps.model.JpsElement; /** + * Represents a node in the output layout tree of an artifact. + * + * @see JpsComplexPackagingElement + * @see JpsCompositePackagingElement + * @see JpsFileCopyPackagingElement + * @see JpsDirectoryCopyPackagingElement + * * @author nik */ public interface JpsPackagingElement extends JpsElement {