You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@guacamole.apache.org by vn...@apache.org on 2017/09/27 22:16:26 UTC
[6/7] incubator-guacamole-client git commit: GUACAMOLE-394: Add
getLastActive() function,
returning the time that a user/connection was last logged-in / used.
GUACAMOLE-394: Add getLastActive() function, returning the time that a user/connection was last logged-in / used.
Project: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/commit/3cd7f453
Tree: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/tree/3cd7f453
Diff: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/diff/3cd7f453
Branch: refs/heads/master
Commit: 3cd7f453c0a9ba8abd69c76cce8da8a917c0021e
Parents: b61f14e
Author: Michael Jumper <mj...@apache.org>
Authored: Mon Sep 11 18:49:11 2017 -0700
Committer: Michael Jumper <mj...@apache.org>
Committed: Mon Sep 25 12:50:52 2017 -0700
----------------------------------------------------------------------
.../auth/jdbc/connection/ModeledConnection.java | 6 ++++++
.../auth/jdbc/sharing/connection/SharedConnection.java | 6 ++++++
.../guacamole/auth/jdbc/sharing/user/SharedUser.java | 9 +++++++++
.../apache/guacamole/auth/jdbc/user/ModeledUser.java | 5 +++++
.../java/org/apache/guacamole/net/auth/Connection.java | 13 +++++++++++++
.../main/java/org/apache/guacamole/net/auth/User.java | 12 ++++++++++++
.../guacamole/net/auth/simple/SimpleConnection.java | 6 ++++++
.../apache/guacamole/net/auth/simple/SimpleUser.java | 6 ++++++
.../rest/connection/APIConnectionWrapper.java | 6 ++++++
.../org/apache/guacamole/rest/user/APIUserWrapper.java | 6 ++++++
10 files changed, 75 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/connection/ModeledConnection.java
----------------------------------------------------------------------
diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/connection/ModeledConnection.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/connection/ModeledConnection.java
index 365c40d..c596b27 100644
--- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/connection/ModeledConnection.java
+++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/connection/ModeledConnection.java
@@ -24,6 +24,7 @@ import com.google.inject.Provider;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -233,6 +234,11 @@ public class ModeledConnection extends ModeledChildDirectoryObject<ConnectionMod
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<? extends ConnectionRecord> getHistory() throws GuacamoleException {
return connectionService.retrieveHistory(getCurrentUser(), this);
}
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/connection/SharedConnection.java
----------------------------------------------------------------------
diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/connection/SharedConnection.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/connection/SharedConnection.java
index 1c955db..5483d02 100644
--- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/connection/SharedConnection.java
+++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/connection/SharedConnection.java
@@ -21,6 +21,7 @@ package org.apache.guacamole.auth.jdbc.sharing.connection;
import com.google.inject.Inject;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -147,6 +148,11 @@ public class SharedConnection implements Connection {
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<? extends ConnectionRecord> getHistory()
throws GuacamoleException {
return Collections.<ConnectionRecord>emptyList();
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/user/SharedUser.java
----------------------------------------------------------------------
diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/user/SharedUser.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/user/SharedUser.java
index 07d762a..8e7931d 100644
--- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/user/SharedUser.java
+++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/sharing/user/SharedUser.java
@@ -20,6 +20,7 @@
package org.apache.guacamole.auth.jdbc.sharing.user;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.guacamole.GuacamoleException;
@@ -91,6 +92,14 @@ public class SharedUser implements User {
}
@Override
+ public Date getLastActive() {
+
+ // History is not recorded for shared users
+ return null;
+
+ }
+
+ @Override
public List<ActivityRecord> getHistory() throws GuacamoleException {
// History is not recorded for shared users
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/user/ModeledUser.java
----------------------------------------------------------------------
diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/user/ModeledUser.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/user/ModeledUser.java
index 1d40c1f..fc43e36 100644
--- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/user/ModeledUser.java
+++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/user/ModeledUser.java
@@ -795,6 +795,11 @@ public class ModeledUser extends ModeledDirectoryObject<UserModel> implements Us
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<ActivityRecord> getHistory() throws GuacamoleException {
return Collections.<ActivityRecord>emptyList();
}
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Connection.java
----------------------------------------------------------------------
diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Connection.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Connection.java
index b0795e2..85fd168 100644
--- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Connection.java
+++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Connection.java
@@ -19,6 +19,7 @@
package org.apache.guacamole.net.auth;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -103,6 +104,18 @@ public interface Connection extends Identifiable, Connectable {
void setAttributes(Map<String, String> attributes);
/**
+ * Returns the date and time that this connection was last used. If the
+ * connection was never used, the time that the connection was last used is
+ * unknown, or this information is not visible to the current user, this
+ * may be null.
+ *
+ * @return
+ * The date and time this connection was last used, or null if this
+ * information is unavailable or inapplicable.
+ */
+ Date getLastActive();
+
+ /**
* Returns a list of ConnectionRecords representing the usage history
* of this Connection, including any active users. ConnectionRecords
* in this list will be sorted in descending order of end time (active
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java
----------------------------------------------------------------------
diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java
index 43d57c0..f7bd61c 100644
--- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java
+++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java
@@ -19,6 +19,7 @@
package org.apache.guacamole.net.auth;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.guacamole.GuacamoleException;
@@ -102,6 +103,17 @@ public interface User extends Identifiable {
void setAttributes(Map<String, String> attributes);
/**
+ * Returns the date and time that this user was last active. If the user
+ * was never active, the time that the user was last active is unknown, or
+ * this information is not visible to the current user, this may be null.
+ *
+ * @return
+ * The date and time this user was last active, or null if this
+ * information is unavailable or inapplicable.
+ */
+ Date getLastActive();
+
+ /**
* Returns a list of ActivityRecords representing the login history
* of this user, including any active sessions. ActivityRecords
* in this list will be sorted in descending order of end time (active
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleConnection.java
----------------------------------------------------------------------
diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleConnection.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleConnection.java
index 2251a9e..85783a0 100644
--- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleConnection.java
+++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleConnection.java
@@ -20,6 +20,7 @@
package org.apache.guacamole.net.auth.simple;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.guacamole.GuacamoleException;
@@ -137,6 +138,11 @@ public class SimpleConnection extends AbstractConnection {
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<ConnectionRecord> getHistory() throws GuacamoleException {
return Collections.<ConnectionRecord>emptyList();
}
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java
----------------------------------------------------------------------
diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java
index cd20f39..19ed357 100644
--- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java
+++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java
@@ -21,6 +21,7 @@ package org.apache.guacamole.net.auth.simple;
import java.util.Collection;
import java.util.Collections;
+import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@@ -166,6 +167,11 @@ public class SimpleUser extends AbstractUser {
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<ActivityRecord> getHistory() throws GuacamoleException {
return Collections.<ActivityRecord>emptyList();
}
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/guacamole/src/main/java/org/apache/guacamole/rest/connection/APIConnectionWrapper.java
----------------------------------------------------------------------
diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/connection/APIConnectionWrapper.java b/guacamole/src/main/java/org/apache/guacamole/rest/connection/APIConnectionWrapper.java
index e06e338..3a987e5 100644
--- a/guacamole/src/main/java/org/apache/guacamole/rest/connection/APIConnectionWrapper.java
+++ b/guacamole/src/main/java/org/apache/guacamole/rest/connection/APIConnectionWrapper.java
@@ -20,6 +20,7 @@
package org.apache.guacamole.rest.connection;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -132,6 +133,11 @@ public class APIConnectionWrapper implements Connection {
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<? extends ConnectionRecord> getHistory() throws GuacamoleException {
return Collections.<ConnectionRecord>emptyList();
}
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/3cd7f453/guacamole/src/main/java/org/apache/guacamole/rest/user/APIUserWrapper.java
----------------------------------------------------------------------
diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/user/APIUserWrapper.java b/guacamole/src/main/java/org/apache/guacamole/rest/user/APIUserWrapper.java
index 7f37be6..c4b85f9 100644
--- a/guacamole/src/main/java/org/apache/guacamole/rest/user/APIUserWrapper.java
+++ b/guacamole/src/main/java/org/apache/guacamole/rest/user/APIUserWrapper.java
@@ -20,6 +20,7 @@
package org.apache.guacamole.rest.user;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.guacamole.GuacamoleException;
@@ -116,6 +117,11 @@ public class APIUserWrapper implements User {
}
@Override
+ public Date getLastActive() {
+ return null;
+ }
+
+ @Override
public List<? extends ActivityRecord> getHistory() throws GuacamoleException {
return Collections.<ActivityRecord>emptyList();
}