From f81ed74578eb1d0fed26c56ddcfbb39f08a4e47c Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 10 Apr 2014 18:58:10 -0400
Subject: [PATCH] Support querying in tickets ls and accept Object[][] for table data

---
 src/main/java/com/gitblit/transport/ssh/SshKey.java |   46 ++++++++++++++++++++++++++--------------------
 1 files changed, 26 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/gitblit/transport/ssh/SshKey.java b/src/main/java/com/gitblit/transport/ssh/SshKey.java
index cac6c41..498b6bd 100644
--- a/src/main/java/com/gitblit/transport/ssh/SshKey.java
+++ b/src/main/java/com/gitblit/transport/ssh/SshKey.java
@@ -28,6 +28,8 @@
 
 	private String fingerprint;
 
+	private String toString;
+
 	public SshKey(String data) {
 		this.rawData = data;
 	}
@@ -96,12 +98,6 @@
 	public String getFingerprint() {
 		if (fingerprint == null) {
 			StringBuilder sb = new StringBuilder();
-			// TODO append the keysize
-			int keySize = 0;
-			if (keySize > 0) {
-				sb.append(keySize).append(' ');
-			}
-
 			// append the key hash as colon-separated pairs
 			String hash;
 			if (rawData != null) {
@@ -116,19 +112,6 @@
 				sb.append(hash.charAt(i)).append(hash.charAt(i + 1)).append(':');
 			}
 			sb.setLength(sb.length() - 1);
-
-			// append the comment
-			String c = getComment();
-			if (!StringUtils.isEmpty(c)) {
-				sb.append(' ');
-				sb.append(c);
-			}
-
-			// append the algorithm
-			String alg = getAlgorithm();
-			if (!StringUtils.isEmpty(alg)) {
-				sb.append(" (").append(alg).append(")");
-			}
 			fingerprint = sb.toString();
 		}
 		return fingerprint;
@@ -151,6 +134,29 @@
 
 	@Override
 	public String toString() {
-		return getFingerprint();
+		if (toString == null) {
+			StringBuilder sb = new StringBuilder();
+			// TODO append the keysize
+			int keySize = 0;
+			if (keySize > 0) {
+				sb.append(keySize).append(' ');
+			}
+			// append fingerprint
+			sb.append(' ');
+			sb.append(getFingerprint());
+			// append the comment
+			String c = getComment();
+			if (!StringUtils.isEmpty(c)) {
+				sb.append(' ');
+				sb.append(c);
+			}
+			// append algorithm
+			String alg = getAlgorithm();
+			if (!StringUtils.isEmpty(alg)) {
+				sb.append(" (").append(alg).append(")");
+			}
+			toString = sb.toString();
+		}
+		return toString;
 	}
 }

--
Gitblit v1.9.1