Improvement: display the credits earned during the session in the swing UI

This commit is contained in:
Laurent Clouet
2015-03-02 18:05:39 +00:00
parent 38ba5a995d
commit 40de3e150d
2 changed files with 60 additions and 0 deletions

View File

@@ -750,6 +750,41 @@ public class Server extends Thread implements HostnameVerifier, X509TrustManager
return null;
}
public String getCreditEarnedOnCurrentSession() {
try {
HttpURLConnection httpCon = this.HTTPRequest(this.getPage("credits-earned"));
InputStream inStrm = httpCon.getInputStream();
if (httpCon.getResponseCode() != HttpURLConnection.HTTP_OK) {
this.log.debug("Server::getCreditEarnedOnCurrentSession code not ok " + httpCon.getResponseCode());
return null;
}
int size = httpCon.getContentLength();
if (size == 0) {
this.log.debug("Server::getLastRender size is 0");
return null;
}
byte[] ret = new byte[size];
byte[] ch = new byte[1024];
int n = 0;
int i = 0;
while ((n = inStrm.read(ch)) != -1) {
System.arraycopy(ch, 0, ret, i, n);
i += n;
}
inStrm.close();
return new String(ret);
}
catch (Exception e) {
System.err.println("Server::getCreditEarnedOnCurrentSession exception " + e);
e.printStackTrace();
}
return null;
}
private String generateXMLForMD5cache() {
String xml_str = null;
try {

View File

@@ -23,6 +23,7 @@ public class Working implements Activity {
JLabel renderedFrameContent;
JLabel remainingFrameContent;
JLabel lastRender;
JLabel creditEarned;
JButton pauseButton;
public Working(GuiSwing parent_) {
@@ -31,6 +32,7 @@ public class Working implements Activity {
statusContent = new JLabel("Init");
renderedFrameContent = new JLabel("0");
remainingFrameContent = new JLabel("0");
creditEarned = new JLabel("");
lastRender = new JLabel();
}
@@ -63,6 +65,15 @@ public class Working implements Activity {
n += sep;
JLabel creditsEarnedLabel = new JLabel("Credits earned:");
creditsEarnedLabel.setBounds(start_label_left, n, 240, size_height_label);
parent.getContentPane().add(creditsEarnedLabel);
creditEarned.setBounds(start_label_right, n, end_label_right - start_label_right, size_height_label);
parent.getContentPane().add(creditEarned);
n += sep;
JLabel renderedFrameLabel = new JLabel("Rendered Frame:");
renderedFrameLabel.setBounds(start_label_left, n, 240, size_height_label);
parent.getContentPane().add(renderedFrameLabel);
@@ -109,6 +120,7 @@ public class Working implements Activity {
public void setRenderedFrame(int n) {
renderedFrameContent.setText(String.valueOf(n));
showCreditEarned();
showLastRender();
}
@@ -134,6 +146,19 @@ public class Working implements Activity {
}
public void showCreditEarned() {
Client client = parent.getClient();
if (client != null) {
Server server = client.getServer();
if (server != null) {
String data = server.getCreditEarnedOnCurrentSession();
if (data != null) {
creditEarned.setText(data);
}
}
}
}
class PauseAction implements ActionListener {
@Override