33import software .coley .lljzip .format .model .*;
44
55import javax .annotation .Nonnull ;
6+ import javax .annotation .Nullable ;
67
78/**
89 * Mapper outline for zip parts.
@@ -16,9 +17,9 @@ public interface ZipPartMapper {
1617 * @param part
1718 * Part to map.
1819 *
19- * @return Mapped part.
20+ * @return Mapped part, or {@code null} on removal .
2021 */
21- @ Nonnull
22+ @ Nullable
2223 default ZipPart map (@ Nonnull ZipArchive archive , @ Nonnull ZipPart part ) {
2324 if (part instanceof LocalFileHeader ) {
2425 return mapLocal (archive , (LocalFileHeader ) part );
@@ -37,9 +38,9 @@ default ZipPart map(@Nonnull ZipArchive archive, @Nonnull ZipPart part) {
3738 * @param localFileHeader
3839 * Original local file.
3940 *
40- * @return Mapped local file.
41+ * @return Mapped local file, or {@code null} on removal .
4142 */
42- @ Nonnull
43+ @ Nullable
4344 LocalFileHeader mapLocal (@ Nonnull ZipArchive archive , @ Nonnull LocalFileHeader localFileHeader );
4445
4546 /**
@@ -48,9 +49,9 @@ default ZipPart map(@Nonnull ZipArchive archive, @Nonnull ZipPart part) {
4849 * @param centralDirectoryFileHeader
4950 * Original central directory file.
5051 *
51- * @return Mapped central directory file.
52+ * @return Mapped central directory file, or {@code null} on removal .
5253 */
53- @ Nonnull
54+ @ Nullable
5455 CentralDirectoryFileHeader mapCentral (@ Nonnull ZipArchive archive , @ Nonnull CentralDirectoryFileHeader centralDirectoryFileHeader );
5556
5657 /**
@@ -59,8 +60,8 @@ default ZipPart map(@Nonnull ZipArchive archive, @Nonnull ZipPart part) {
5960 * @param endOfCentralDirectory
6061 * Original end.
6162 *
62- * @return Mapped end.
63+ * @return Mapped end, or {@code null} on removal .
6364 */
64- @ Nonnull
65+ @ Nullable
6566 EndOfCentralDirectory mapEnd (@ Nonnull ZipArchive archive , @ Nonnull EndOfCentralDirectory endOfCentralDirectory );
6667}
0 commit comments