From e6ab691cfbbc5716e78df0fa806e23d37b9e5e53 Mon Sep 17 00:00:00 2001 From: exceptionfactory Date: Mon, 30 Mar 2026 14:52:13 -0500 Subject: [PATCH] NIFI-15770 Deprecated Restricted and RequiredPermission for removal - Suppressed removal warnings on internal references to deprecated annotations --- .../java/org/apache/nifi/annotation/behavior/Restricted.java | 4 ++++ .../java/org/apache/nifi/annotation/behavior/Restriction.java | 4 ++++ .../java/org/apache/nifi/components/RequiredPermission.java | 3 +++ .../nifi/documentation/AbstractDocumentationWriter.java | 2 ++ .../apache/nifi/documentation/xml/XmlDocumentationWriter.java | 2 ++ src/test/java/org/apache/nifi/parameter/TestParameter.java | 1 + 6 files changed, 16 insertions(+) diff --git a/src/main/java/org/apache/nifi/annotation/behavior/Restricted.java b/src/main/java/org/apache/nifi/annotation/behavior/Restricted.java index 8411c6c..1f8d922 100644 --- a/src/main/java/org/apache/nifi/annotation/behavior/Restricted.java +++ b/src/main/java/org/apache/nifi/annotation/behavior/Restricted.java @@ -38,7 +38,10 @@ * privileged, and admins should be aware of these capabilities and explicitly enable * them for a subset of trusted users. *

+ * + * @deprecated Planned for removal without replacement according to NIP-24 */ +@Deprecated(since = "2.8.0", forRemoval = true) @Documented @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @@ -58,6 +61,7 @@ * * @return Array of restrictions */ + @SuppressWarnings("removal") Restriction[] restrictions() default {}; } diff --git a/src/main/java/org/apache/nifi/annotation/behavior/Restriction.java b/src/main/java/org/apache/nifi/annotation/behavior/Restriction.java index c16293f..ade8dab 100644 --- a/src/main/java/org/apache/nifi/annotation/behavior/Restriction.java +++ b/src/main/java/org/apache/nifi/annotation/behavior/Restriction.java @@ -27,7 +27,10 @@ /** * Specific restriction for a component. Indicates what the required permission is and why the restriction exists. + * + * @deprecated Planned for removal without replacement according to NIP-24 */ +@Deprecated(since = "2.8.0", forRemoval = true) @Documented @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @@ -39,6 +42,7 @@ * * @return Permission required for this restriction */ + @SuppressWarnings("removal") RequiredPermission requiredPermission(); /** diff --git a/src/main/java/org/apache/nifi/components/RequiredPermission.java b/src/main/java/org/apache/nifi/components/RequiredPermission.java index 593f064..201fe0d 100644 --- a/src/main/java/org/apache/nifi/components/RequiredPermission.java +++ b/src/main/java/org/apache/nifi/components/RequiredPermission.java @@ -20,7 +20,10 @@ /** * Enumeration of permission required for annotated components + * + * @deprecated Planned for removal without replacement according to NIP-24 */ +@Deprecated(since = "2.8.0", forRemoval = true) public enum RequiredPermission { READ_FILESYSTEM("read-filesystem", "read filesystem"), WRITE_FILESYSTEM("write-filesystem", "write filesystem"), diff --git a/src/main/java/org/apache/nifi/documentation/AbstractDocumentationWriter.java b/src/main/java/org/apache/nifi/documentation/AbstractDocumentationWriter.java index 4e28cbb..9dedd1b 100644 --- a/src/main/java/org/apache/nifi/documentation/AbstractDocumentationWriter.java +++ b/src/main/java/org/apache/nifi/documentation/AbstractDocumentationWriter.java @@ -146,6 +146,7 @@ public final void write(final ConfigurableComponent component, final Collection< writeFooter(component); } + @SuppressWarnings("removal") protected void writeBody(final ConfigurableComponent component, Map propertyServices) throws IOException { writeExtensionName(component.getClass().getName()); writeExtensionType(getExtensionType(component)); @@ -329,6 +330,7 @@ protected ExtensionType getExtensionType(final ConfigurableComponent component) protected abstract void writeStatefulInfo(Stateful stateful) throws IOException; + @SuppressWarnings("removal") protected abstract void writeRestrictedInfo(Restricted restricted) throws IOException; protected abstract void writeInputRequirementInfo(InputRequirement.Requirement requirement) throws IOException; diff --git a/src/main/java/org/apache/nifi/documentation/xml/XmlDocumentationWriter.java b/src/main/java/org/apache/nifi/documentation/xml/XmlDocumentationWriter.java index 66aec1f..b9acd56 100644 --- a/src/main/java/org/apache/nifi/documentation/xml/XmlDocumentationWriter.java +++ b/src/main/java/org/apache/nifi/documentation/xml/XmlDocumentationWriter.java @@ -317,6 +317,7 @@ protected void writeStatefulInfo(final Stateful stateful) throws IOException { writeEndElement(); } + @SuppressWarnings("removal") @Override protected void writeRestrictedInfo(final Restricted restricted) throws IOException { if (restricted == null) { @@ -337,6 +338,7 @@ protected void writeRestrictedInfo(final Restricted restricted) throws IOExcepti writeEndElement(); } + @SuppressWarnings("removal") private void writeRestriction(final Restriction restriction) throws IOException { writeStartElement("restriction"); diff --git a/src/test/java/org/apache/nifi/parameter/TestParameter.java b/src/test/java/org/apache/nifi/parameter/TestParameter.java index a7d62fb..c4294e0 100644 --- a/src/test/java/org/apache/nifi/parameter/TestParameter.java +++ b/src/test/java/org/apache/nifi/parameter/TestParameter.java @@ -248,6 +248,7 @@ public String getIdentifier() { return identifier; } + @SuppressWarnings("deprecation") @Override public String getParameterContextIdentifier() { return parameterContextIdentifier;