package org.dcache.webadmin.view.beans; import diskCacheV111.util.TransferInfo; /** * <p>An extension of the {@link TransferInfo} * providing key components. Also exposes getters on UserInfo fields</p> */ public class ActiveTransfersBean extends TransferInfo { public static class Key { private final String domainName; private final String cellName; private final long serialId; public Key(String domainName, String cellName, long serialId) { this.domainName = domainName; this.cellName = cellName; this.serialId = serialId; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } Key key = (Key) o; return (serialId == key.serialId) && cellName.equals(key.cellName) && domainName.equals(key.domainName); } @Override public int hashCode() { int result = domainName.hashCode(); result = 31 * result + cellName.hashCode(); result = 31 * result + (int) (serialId ^ (serialId >>> 32)); return result; } } public ActiveTransfersBean() { } public String getVomsGroup() { return userInfo.getPrimaryVOMSGroup(); } public String getGid() { return userInfo.getGid(); } public Key getKey() { return new Key(domainName, cellName, serialId); } public String getUid() { return userInfo.getUid(); } public String getTimeWaiting() { return timeWaiting(System.currentTimeMillis(), true); } }