Skip to content
Snippets Groups Projects
Commit 7a0c1433 authored by Felix Sidokhine's avatar Felix Sidokhine
Browse files

wip

parent 8ae930df
No related branches found
No related tags found
No related merge requests found
......@@ -14,32 +14,27 @@
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-model</artifactId>
<version>3.2.5</version>
<version>${maven.model.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>4.4.12</version>
<version>${apache.httpcore.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.10</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
<version>${apache.httpclient.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>20.0</version>
<version>${google.guava.version}</version>
</dependency>
<dependency>
<groupId>com.blockfeed</groupId>
<artifactId>messaging</artifactId>
<version>1.0-SNAPSHOT</version>
<groupId>org.zeromq</groupId>
<artifactId>jeromq</artifactId>
<version>${jeromq.version}</version>
</dependency>
</dependencies>
......@@ -49,7 +44,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.3</version>
<version>${maven.shade.version}</version>
<executions>
<!-- Run shade goal on package phase -->
<execution>
......
package launcher;
import lombok.extern.slf4j.Slf4j;
import org.zeromq.ZMQ;
import java.util.concurrent.atomic.AtomicBoolean;
@Slf4j
public class MessageReceiver extends Thread {
private ZMQ.Socket socket;
......@@ -22,7 +24,7 @@ public class MessageReceiver extends Thread {
if(message.equals("DO-UPDATE")) atomicBoolean.set(true);
}
catch (Exception e){
System.out.println("Some exception occurred!");
log.error("Some exception occurred on the message receiving thread, details {}!",e.getMessage());
}
}
}
......
......@@ -6,6 +6,7 @@ import com.jsoniter.JsonIterator;
import com.jsoniter.any.Any;
import lombok.Getter;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
......@@ -37,6 +38,7 @@ import java.util.logging.Logger;
@Getter
@Setter
@Slf4j
public class UpdateThread extends Thread {
private HashMap<String, String> localVersions = new HashMap<>();
......@@ -46,7 +48,6 @@ public class UpdateThread extends Thread {
private HashMap<String, String> remoteChecksums = new HashMap<>();
private String[] parentArgs;
private final static Logger logger = Logger.getLogger(UpdateThread.class.getName());
private static volatile String CORE_PACKAGE_MAIN_CLASS_NAME;
private static volatile String UPDATE_SERVER_URL;
private static volatile Long UPDATE_INTERVAL;
......@@ -71,7 +72,7 @@ public class UpdateThread extends Thread {
messageReceiver = new MessageReceiver(receiver,doUpdate);
messageReceiver.start();
} catch (Exception e) {
logger.warning("Could not create and bind publisher and/or receiver! Please contact software developer");
log.warn("Could not create and bind publisher and/or receiver! Please contact software developer");
System.exit(-1);
}
......@@ -83,7 +84,7 @@ public class UpdateThread extends Thread {
UPDATE_INTERVAL = any.get("UPDATE_INTERVAL").toLong();
} catch (IOException e) {
logger.warning("Missing OEM configuration! Please contact software developer");
log.warn("Missing OEM configuration! Please contact software developer");
System.exit(-1);
}
......@@ -149,7 +150,7 @@ public class UpdateThread extends Thread {
discoverVersions(folderExec);
discoverVersions(folderLibs);
} catch (Exception e) {
logger.warning(e.toString());
log.warn(e.toString());
}
}
......@@ -178,7 +179,7 @@ public class UpdateThread extends Thread {
remoteChecksums.put(k, v.get("md5").toString());
});
} catch (Exception e) {
logger.warning("Could not establish connection to JAMS Update Center with error: " + e.toString());
log.warn("Could not establish connection to JAMS Update Center with error: " + e.toString());
}
}
......@@ -236,13 +237,13 @@ public class UpdateThread extends Thread {
((X509Certificate) c).checkValidity();
c.verify(ca.getPublicKey());
} catch (Exception e) {
logger.warning("Your license is no longer valid or has been tampered with - " + e.toString());
log.warn("Your license is no longer valid or has been tampered with - " + e.toString());
return false;
}
sslContext = SSLContexts.custom().loadKeyMaterial(ks, "".toCharArray()).loadTrustMaterial(trustStore, null)
.build();
} catch (Exception e) {
logger.warning("Could not read license file with error " + e.toString());
log.warn("Could not read license file with error " + e.toString());
return false;
}
return true;
......@@ -261,14 +262,14 @@ public class UpdateThread extends Thread {
HttpClient httpClient = HttpClients.custom().setSSLContext(sslContext).build();
HttpResponse httpResponse = httpClient.execute(new HttpGet(UPDATE_SERVER_URL + "/updates/" + v));
if (httpResponse.getStatusLine().getStatusCode() == 200) {
logger.info(tmpFolder.getPath() + "/" + files.get(k));
log.info(tmpFolder.getPath() + "/" + files.get(k));
FileOutputStream fos = new FileOutputStream(tmpFolder.getPath() + "/" + files.get(k));
if (k.equals(CORE_PACKAGE_MAIN_CLASS_NAME)) {
httpResponse.getEntity().writeTo(fos);
fos.close();
if (checksum(tmpFolder.getPath() + "/" + files.get(k)).equals(remoteChecksums.get(k))) {
logger.info("Successfully downloaded the core package!");
log.info("Successfully downloaded the core package!");
remoteChecksums.remove(CORE_PACKAGE_MAIN_CLASS_NAME);
}
......@@ -277,16 +278,16 @@ public class UpdateThread extends Thread {
fos.close();
if (checksum(tmpFolder.getPath() + "/" + files.get(k)).equals(remoteChecksums.get(k))) {
logger.info("Successfully downloaded a library package!");
log.info("Successfully downloaded a library package!");
remoteChecksums.remove(remoteChecksums.get(k));
}
}
} else {
logger.warning("The server declared an update but does not have the required files?!");
log.warn("The server declared an update but does not have the required files?!");
}
} catch (Exception e1) {
logger.warning("Could not download an update with error " + e1.toString());
log.warn("Could not download an update with error " + e1.toString());
}
});
}
......@@ -334,14 +335,14 @@ public class UpdateThread extends Thread {
System.out.println("Murdered process with pid: " + AppStarter.getJamsPID());
// delete old files
remoteExecs.forEach((k, v) -> {
logger.info(remoteExecs.get(k));
log.info(remoteExecs.get(k));
if (k.equals(CORE_PACKAGE_MAIN_CLASS_NAME)) {
File f = new File(System.getProperty("user.dir") + "/" + remoteExecs.get(k));
f.delete();
f = new File(System.getProperty("user.dir") + "/tmp/" + remoteExecs.get(k));
if (!f.renameTo(new File(System.getProperty("user.dir") + "/" + remoteExecs.get(k))))
logger.warning("An error occurred while attempting to move the file!");
log.warn("An error occurred while attempting to move the file!");
else
f.delete();
} else {
......@@ -349,7 +350,7 @@ public class UpdateThread extends Thread {
f.delete();
f = new File(System.getProperty("user.dir") + "/tmp/" + remoteExecs.get(k));
if (!f.renameTo(new File(System.getProperty("user.dir") + "/libs/" + remoteExecs.get(k))))
logger.warning("An error occurred while attempting to move the file!");
log.warn("An error occurred while attempting to move the file!");
else
f.delete();
}
......@@ -375,7 +376,7 @@ public class UpdateThread extends Thread {
try {
FileUtils.deleteDirectory(System.getProperty("user.dir") + "/tmp/");
} catch (IOException e) {
logger.warning("An error occurred while attempting to delete /tmp/ folder!");
log.warn("An error occurred while attempting to delete /tmp/ folder!");
}
}
......@@ -384,7 +385,7 @@ public class UpdateThread extends Thread {
HashCode hash = com.google.common.io.Files
.hash(new File(filepath), Hashing.md5());
logger.info("Calculated md5: " + hash.toString());
log.warn("Calculated md5: " + hash.toString());
return hash.toString();
}
......@@ -410,7 +411,7 @@ public class UpdateThread extends Thread {
};
timer.scheduleAtFixedRate(pollTask, 15000, UPDATE_INTERVAL);
} catch (Exception e) {
logger.warning("error! " + e.toString());
log.warn("error! " + e.toString());
}
}
}
\ No newline at end of file
......@@ -66,11 +66,6 @@
<artifactId>asm</artifactId>
<version>${asm.version}</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20190722</version>
</dependency>
</dependencies>
<build>
......
......@@ -14,7 +14,6 @@ module jams.server {
requires jami.dht;
requires nimbus.jose.jwt;
requires java.desktop;
requires org.json;
requires java.naming;
requires java.logging;
requires javax.servlet.api;
......
......@@ -26,8 +26,8 @@ import java.util.concurrent.atomic.AtomicBoolean;
@Slf4j
public class Server {
public static AtomicBoolean isInstalled = new AtomicBoolean(false);
private static volatile boolean activated = false;
public final static AtomicBoolean isInstalled = new AtomicBoolean(false);
public final static AtomicBoolean activated = new AtomicBoolean(false);
static {
JsoniterRegistry.initCodecs();
......@@ -92,12 +92,4 @@ public class Server {
log.info("Started server with empty modules waiting for setup...");
}
}
public static boolean isActivated() {
return activated;
}
public static void setActivated(boolean isActivated) {
Server.activated = isActivated;
}
}
......@@ -77,7 +77,7 @@ public class LicenseService {
}
}
catch (Exception e){
Server.setActivated(false);
Server.activated.set(false);
licenseType = "COMMUNITY";
//logger.warning("An exception occurred while checking your license: " + e.toString());
}
......
......@@ -47,6 +47,11 @@
<maven.clean.version>3.1.0</maven.clean.version>
<nimbus.jwt.version>8.17</nimbus.jwt.version>
<asm.version>8.0</asm.version>
<jeromq.version>0.5.2</jeromq.version>
<maven.model.version>3.2.5</maven.model.version>
<apache.httpcore.version>4.4.12</apache.httpcore.version>
<apache.httpclient.version>4.5.10</apache.httpclient.version>
<google.guava.version>20.0</google.guava.version>
</properties>
<dependencies>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment