提交 91b3d3c5 编写于 作者: O Olivier Lamy

Merge pull request #489 from lvotypko/human-readable-filesize

Human readable size of files
...@@ -93,6 +93,7 @@ import java.lang.reflect.ParameterizedType; ...@@ -93,6 +93,7 @@ import java.lang.reflect.ParameterizedType;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.URL; import java.net.URL;
import java.net.URLDecoder; import java.net.URLDecoder;
import java.text.DecimalFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Calendar; import java.util.Calendar;
...@@ -1494,4 +1495,30 @@ public class Functions { ...@@ -1494,4 +1495,30 @@ public class Functions {
public String getUserAvatar(User user, String avatarSize) { public String getUserAvatar(User user, String avatarSize) {
return getAvatar(user,avatarSize); return getAvatar(user,avatarSize);
} }
/**
* Returns human readable information about file size
*
* @param file size in bytes
* @return file size in appropriate unit
*/
public static String humanReadableByteSize(long size){
String measure = "B";
Double number = new Double(size);
if(number>=1024){
number = number/1024;
measure = "KB";
if(number>=1024){
number = number/1024;
measure = "MB";
if(number>=1024){
number=number/1024;
measure = "GB";
}
}
}
DecimalFormat format = new DecimalFormat("##.00");
return format.format(number) + " " + measure;
}
} }
...@@ -1117,6 +1117,10 @@ public abstract class Run <JobT extends Job<JobT,RunT>,RunT extends Run<JobT,Run ...@@ -1117,6 +1117,10 @@ public abstract class Run <JobT extends Job<JobT,RunT>,RunT extends Run<JobT,Run
public String getLength() { public String getLength() {
return length; return length;
} }
public long getFileSize(){
return Long.decode(length);
}
public String getTreeNodeId() { public String getTreeNodeId() {
return treeNodeId; return treeNodeId;
......
...@@ -71,7 +71,7 @@ THE SOFTWARE. ...@@ -71,7 +71,7 @@ THE SOFTWARE.
</td> </td>
<j:if test="${!x.folder}"> <j:if test="${!x.folder}">
<td class="fileSize"> <td class="fileSize">
${x.getSize()} ${h.humanReadableByteSize(x.getSize())}
</td> </td>
<td> <td>
<j:if test="${x.readable}"> <j:if test="${x.readable}">
......
...@@ -57,7 +57,7 @@ THE SOFTWARE. ...@@ -57,7 +57,7 @@ THE SOFTWARE.
<a href="${baseURL}artifact/${f.href}">${f.displayPath}</a> <a href="${baseURL}artifact/${f.href}">${f.displayPath}</a>
</td> </td>
<td class="fileSize"> <td class="fileSize">
${f.length} ${h.humanReadableByteSize(f.getFileSize())}
</td> </td>
<td> <td>
<a href="${baseURL}artifact/${f.href}/*fingerprint*/"> <a href="${baseURL}artifact/${f.href}/*fingerprint*/">
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册