mirror of
				https://github.com/gyurix1968/guacamole-client.git
				synced 2025-10-31 17:13:21 +00:00 
			
		
		
		
	GUACAMOLE-394: Expose "last active" time for connections and users via REST API.
This commit is contained in:
		| @@ -20,6 +20,7 @@ | ||||
| package org.apache.guacamole.rest.connection; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.Date; | ||||
| import java.util.Map; | ||||
| import org.codehaus.jackson.annotate.JsonIgnoreProperties; | ||||
| import org.codehaus.jackson.map.annotate.JsonSerialize; | ||||
| @@ -75,7 +76,13 @@ public class APIConnection { | ||||
|      * The count of currently active connections using this connection. | ||||
|      */ | ||||
|     private int activeConnections; | ||||
|      | ||||
|  | ||||
|     /** | ||||
|      * The date and time that this connection was last used, or null if this | ||||
|      * connection has never been used or this information is unavailable. | ||||
|      */ | ||||
|     private Date lastActive; | ||||
|  | ||||
|     /** | ||||
|      * Create an empty APIConnection. | ||||
|      */ | ||||
| @@ -97,6 +104,7 @@ public class APIConnection { | ||||
|         this.identifier = connection.getIdentifier(); | ||||
|         this.parentIdentifier = connection.getParentIdentifier(); | ||||
|         this.activeConnections = connection.getActiveConnections(); | ||||
|         this.lastActive = connection.getLastActive(); | ||||
|          | ||||
|         // Set protocol from configuration | ||||
|         GuacamoleConfiguration configuration = connection.getConfiguration(); | ||||
| @@ -257,4 +265,27 @@ public class APIConnection { | ||||
|         this.sharingProfiles = sharingProfiles; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Returns the date and time that this connection was last used, or null if | ||||
|      * this connection has never been used or this information is unavailable. | ||||
|      * | ||||
|      * @return | ||||
|      *     The date and time that this connection was last used, or null if this | ||||
|      *     connection has never been used or this information is unavailable. | ||||
|      */ | ||||
|     public Date getLastActive() { | ||||
|         return lastActive; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Sets the date and time that this connection was last used. | ||||
|      * | ||||
|      * @param lastActive | ||||
|      *     The date and time that this connection was last used, or null if this | ||||
|      *     connection has never been used or this information is unavailable. | ||||
|      */ | ||||
|     public void setLastActive(Date lastActive) { | ||||
|         this.lastActive = lastActive; | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -19,6 +19,7 @@ | ||||
|  | ||||
| package org.apache.guacamole.rest.user; | ||||
|  | ||||
| import java.util.Date; | ||||
| import java.util.Map; | ||||
| import org.codehaus.jackson.annotate.JsonIgnoreProperties; | ||||
| import org.codehaus.jackson.map.annotate.JsonSerialize; | ||||
| @@ -46,6 +47,12 @@ public class APIUser { | ||||
|      */ | ||||
|     private Map<String, String> attributes; | ||||
|  | ||||
|     /** | ||||
|      * The date and time that this user was last logged in, or null if this user | ||||
|      * has never logged in or this information is unavailable. | ||||
|      */ | ||||
|     private Date lastActive; | ||||
|  | ||||
|     /** | ||||
|      * Construct a new empty APIUser. | ||||
|      */ | ||||
| @@ -60,6 +67,7 @@ public class APIUser { | ||||
|         // Set user information | ||||
|         this.username = user.getIdentifier(); | ||||
|         this.password = user.getPassword(); | ||||
|         this.lastActive = user.getLastActive(); | ||||
|  | ||||
|         // Associate any attributes | ||||
|         this.attributes = user.getAttributes(); | ||||
| @@ -122,4 +130,27 @@ public class APIUser { | ||||
|         this.attributes = attributes; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Returns the date and time that this user was last logged in, or null if | ||||
|      * this user has never logged in or this information is unavailable. | ||||
|      * | ||||
|      * @return | ||||
|      *     The date and time that this user was last logged in, or null if this | ||||
|      *     user has never logged in or this information is unavailable. | ||||
|      */ | ||||
|     public Date getLastActive() { | ||||
|         return lastActive; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Sets the date and time that this user was last logged in. | ||||
|      * | ||||
|      * @param lastActive | ||||
|      *     The date and time that this user was last logged in, or null if this | ||||
|      *     user has never logged in or this information is unavailable. | ||||
|      */ | ||||
|     public void setLastActive(Date lastActive) { | ||||
|         this.lastActive = lastActive; | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -104,6 +104,15 @@ angular.module('rest').factory('Connection', [function defineConnection() { | ||||
|          */ | ||||
|         this.sharingProfiles = template.sharingProfiles; | ||||
|  | ||||
|         /** | ||||
|          * The time that this connection was last used, in seconds since | ||||
|          * 1970-01-01 00:00:00 UTC. If this information is unknown or | ||||
|          * unavailable, this will be null. | ||||
|          * | ||||
|          * @type Number | ||||
|          */ | ||||
|         this.lastActive = template.lastActive; | ||||
|  | ||||
|     }; | ||||
|  | ||||
|     return Connection; | ||||
|   | ||||
| @@ -53,6 +53,15 @@ angular.module('rest').factory('User', [function defineUser() { | ||||
|          */ | ||||
|         this.password = template.password; | ||||
|  | ||||
|         /** | ||||
|          * The time that this user was last logged in, in seconds since | ||||
|          * 1970-01-01 00:00:00 UTC. If this information is unknown or | ||||
|          * unavailable, this will be null. | ||||
|          * | ||||
|          * @type Number | ||||
|          */ | ||||
|         this.lastActive = template.lastActive; | ||||
|  | ||||
|         /** | ||||
|          * Arbitrary name/value pairs which further describe this user. The | ||||
|          * semantics and validity of these attributes are dictated by the | ||||
|   | ||||
		Reference in New Issue
	
	Block a user