diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordModel.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordModel.java index aa35fb27c..9ac157d17 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordModel.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordModel.java @@ -37,6 +37,11 @@ public class ConnectionRecordModel { */ private String connectionIdentifier; + /** + * The name of the connection associated with this connection record. + */ + private String connectionName; + /** * The database ID of the user associated with this connection record. */ @@ -82,6 +87,32 @@ public class ConnectionRecordModel { this.connectionIdentifier = connectionIdentifier; } + + /** + * Returns the name of the connection associated with this connection + * record. + * + * @return + * The name of the connection associated with this connection + * record. + */ + public String getConnectionName() { + return connectionName; + } + + + /** + * Sets the name of the connection associated with this connection + * record. + * + * @param connectionName + * The name of the connection to associate with this connection + * record. + */ + public void setConnectionName(String connectionName) { + this.connectionName = connectionName; + } + /** * Returns the database ID of the user associated with this connection * record. diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ModeledConnectionRecord.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ModeledConnectionRecord.java index 18e491065..dbd9b0b28 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ModeledConnectionRecord.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/connection/ModeledConnectionRecord.java @@ -56,6 +56,11 @@ public class ModeledConnectionRecord implements ConnectionRecord { return model.getConnectionIdentifier(); } + @Override + public String getConnectionName() { + return model.getConnectionName(); + } + @Override public Date getStartDate() { return model.getStartDate(); diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java index 3c0cbf5bd..1c2a40a7b 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java @@ -169,6 +169,11 @@ public class ActiveConnectionRecord implements ConnectionRecord { return connection.getIdentifier(); } + @Override + public String getConnectionName() { + return connection.getName(); + } + @Override public Date getStartDate() { return startDate; diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/user/UserContext.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/user/UserContext.java index 72dea43f4..41e7a6f5d 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/user/UserContext.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/user/UserContext.java @@ -42,7 +42,6 @@ import org.glyptodon.guacamole.net.auth.Connection; import org.glyptodon.guacamole.net.auth.ConnectionGroup; import org.glyptodon.guacamole.net.auth.Directory; import org.glyptodon.guacamole.net.auth.User; -import org.glyptodon.guacamole.net.auth.simple.SimpleConnectionRecordSet; /** * UserContext implementation which is driven by an arbitrary, underlying diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-mysql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-mysql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml index eaf69fffa..ad118923f 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-mysql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-mysql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml @@ -28,11 +28,12 @@ - - - - - + + + + + + @@ -40,6 +41,7 @@ SELECT connection_id, + connection_name, guacamole_connection_history.user_id, username, start_date, @@ -59,6 +61,7 @@ INSERT INTO guacamole_connection_history ( connection_id, + connection_name, user_id, start_date, end_date @@ -77,6 +80,7 @@ SELECT guacamole_connection_history.connection_id, + guacamole_connection.connection_name, guacamole_connection_history.user_id, guacamole_user.username, guacamole_connection_history.start_date, @@ -140,6 +144,7 @@ SELECT guacamole_connection_history.connection_id, + guacamole_connection.connection_name, guacamole_connection_history.user_id, guacamole_user.username, guacamole_connection_history.start_date, diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-postgresql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-postgresql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml index a93679e82..1fa7490a5 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-postgresql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-postgresql/src/main/resources/org/glyptodon/guacamole/auth/jdbc/connection/ConnectionRecordMapper.xml @@ -28,11 +28,12 @@ - - - - - + + + + + + @@ -40,6 +41,7 @@ SELECT connection_id, + connection_name, guacamole_connection_history.user_id, username, start_date, @@ -59,6 +61,7 @@ INSERT INTO guacamole_connection_history ( connection_id, + connection_name, user_id, start_date, end_date @@ -77,6 +80,7 @@ SELECT guacamole_connection_history.connection_id, + guacamole_connection.connection_name, guacamole_connection_history.user_id, guacamole_user.username, guacamole_connection_history.start_date, @@ -140,6 +144,7 @@ SELECT guacamole_connection_history.connection_id, + guacamole_connection.connection_name, guacamole_connection_history.user_id, guacamole_user.username, guacamole_connection_history.start_date, diff --git a/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/ConnectionRecord.java b/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/ConnectionRecord.java index 1d3568e4b..f5533cf78 100644 --- a/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/ConnectionRecord.java +++ b/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/ConnectionRecord.java @@ -41,6 +41,15 @@ public interface ConnectionRecord { * record. */ public String getConnectionIdentifier(); + + /** + * Returns the name of the connection associated with this connection + * record. + * + * @return + * The name of the connection associated with this connection record. + */ + public String getConnectionName(); /** * Returns the date and time the connection began. diff --git a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/history/APIConnectionRecord.java b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/history/APIConnectionRecord.java index a9e14586f..8c38148cc 100644 --- a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/history/APIConnectionRecord.java +++ b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/history/APIConnectionRecord.java @@ -37,6 +37,11 @@ public class APIConnectionRecord { */ private final String connectionIdentifier; + /** + * The identifier of the connection associated with this record. + */ + private final String connectionName; + /** * The date and time the connection began. */ @@ -72,11 +77,12 @@ public class APIConnectionRecord { */ public APIConnectionRecord(ConnectionRecord record) { this.connectionIdentifier = record.getConnectionIdentifier(); - this.startDate = record.getStartDate(); - this.endDate = record.getEndDate(); - this.remoteHost = record.getRemoteHost(); - this.username = record.getUsername(); - this.active = record.isActive(); + this.connectionName = record.getConnectionName(); + this.startDate = record.getStartDate(); + this.endDate = record.getEndDate(); + this.remoteHost = record.getRemoteHost(); + this.username = record.getUsername(); + this.active = record.isActive(); } /** @@ -90,6 +96,16 @@ public class APIConnectionRecord { return connectionIdentifier; } + /** + * Returns the name of the connection associated with this record. + * + * @return + * The name of the connection associated with this record. + */ + public String getConnectionName() { + return connectionName; + } + /** * Returns the date and time the connection began. *