Github user necouchman commented on a diff in the pull request:

    https://github.com/apache/guacamole-client/pull/299#discussion_r195743264
  
    --- Diff: 
extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/user/RemoteAuthenticatedUser.java
 ---
    @@ -67,6 +69,21 @@
          */
         private static final Pattern X_FORWARDED_FOR = Pattern.compile("^" + 
IP_ADDRESS_REGEX + "(, " + IP_ADDRESS_REGEX + ")*$");
     
    +    /**
    +     * Arbitrary attributes associated with this RemoteAuthenticatedUser 
object.
    +     */
    +    private Map<String, String> attributes = new HashMap<String, String>();
    --- End diff --
    
    Yes, but `RemoteAuthenticatedUser` is abstract, so the `getAttributes()` 
and `setAttributes()` methods do not have to be implemented in it - they can 
be, as you've done, here, but they can also be implemented by all of the 
implementing classes.  Obviously implementing them in `RemoteAuthenticatedUser` 
requires fewer lines of code, as then you don't have to implement in both 
`SharedAuthenticatedUser` and `ModeledAuthenticatedUser`, I'm just not sure how 
"clean" this is, or if the `RemoteAuthenticatedUser` class is really the right 
place for implementing these attribute handlers.


---

Reply via email to