From 828726025f34304614feb3aaf18e6ae87b22e792 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Wed, 3 Sep 2025 16:13:22 -0700 Subject: [PATCH] GUACAMOLE-2131: Filter API based on existing objects, where available. --- .../ActiveConnectionObjectTranslator.java | 3 ++- .../rest/connection/ConnectionObjectTranslator.java | 3 ++- .../ConnectionGroupObjectTranslator.java | 3 ++- .../rest/directory/DirectoryObjectResource.java | 2 +- .../rest/directory/DirectoryObjectTranslator.java | 7 ++++++- .../guacamole/rest/directory/DirectoryResource.java | 13 +++++++------ .../SharingProfileObjectTranslator.java | 3 ++- .../guacamole/rest/user/UserObjectTranslator.java | 6 +++--- .../apache/guacamole/rest/user/UserResource.java | 2 +- .../rest/usergroup/UserGroupObjectTranslator.java | 3 ++- 10 files changed, 28 insertions(+), 17 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/activeconnection/ActiveConnectionObjectTranslator.java b/guacamole/src/main/java/org/apache/guacamole/rest/activeconnection/ActiveConnectionObjectTranslator.java index 712a82f62..c3400bc88 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/activeconnection/ActiveConnectionObjectTranslator.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/activeconnection/ActiveConnectionObjectTranslator.java @@ -59,7 +59,8 @@ public class ActiveConnectionObjectTranslator @Override public void filterExternalObject(UserContext context, - APIActiveConnection object) throws GuacamoleException { + ActiveConnection existingObject, APIActiveConnection object) + throws GuacamoleException { // Nothing to filter on ActiveConnections (no attributes) } diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/connection/ConnectionObjectTranslator.java b/guacamole/src/main/java/org/apache/guacamole/rest/connection/ConnectionObjectTranslator.java index 416fb4a63..55c121cd6 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/connection/ConnectionObjectTranslator.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/connection/ConnectionObjectTranslator.java @@ -62,7 +62,8 @@ public class ConnectionObjectTranslator @Override public void filterExternalObject(UserContext userContext, - APIConnection object) throws GuacamoleException { + Connection existingObject, APIConnection object) + throws GuacamoleException { // Filter object attributes by defined schema object.setAttributes(filterAttributes( diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/connectiongroup/ConnectionGroupObjectTranslator.java b/guacamole/src/main/java/org/apache/guacamole/rest/connectiongroup/ConnectionGroupObjectTranslator.java index 3c0ed38d6..be0c59c6b 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/connectiongroup/ConnectionGroupObjectTranslator.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/connectiongroup/ConnectionGroupObjectTranslator.java @@ -56,7 +56,8 @@ public class ConnectionGroupObjectTranslator @Override public void filterExternalObject(UserContext userContext, - APIConnectionGroup object) throws GuacamoleException { + ConnectionGroup existingObject, APIConnectionGroup object) + throws GuacamoleException { // Filter object attributes by defined schema object.setAttributes(filterAttributes( diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/directory/DirectoryObjectResource.java b/guacamole/src/main/java/org/apache/guacamole/rest/directory/DirectoryObjectResource.java index 8ed36fec0..db0504248 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/directory/DirectoryObjectResource.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/directory/DirectoryObjectResource.java @@ -311,7 +311,7 @@ public abstract class DirectoryObjectResource