diff --git a/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java b/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java index 4d47b7d..b5c3c24 100644 --- a/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java +++ b/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java @@ -103,1002 +103,1004 @@ public class delegationServices { String RG = (String) Lrequest.get("rg"); Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); String blockedRG = (String) Filter.get("rgflag"); - if (blockedRG.contains(RG)) { - System.out.println("User Is Trying To Join From A Blocked Region, Halted Login Request."); - System.out.println("Sync Failure"); + if ((Boolean)Filter.get("serviceState") == false) + { BasicDBObject searchQuery = new BasicDBObject(); searchQuery.append("rid", Lrequest.get("rid")); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); updateQuery.append("$set", - new BasicDBObject().append("type", 19)); + new BasicDBObject().append("type", 52)); + updateQuery2.append("$set", + new BasicDBObject().append("dn",Filter.get("deniedmsg"))); updateQuery1.append("$set", new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery2); dCollection.updateOne(searchQuery, updateQuery1); delegationTimer.DeleteTargetRequest(ClientID); } else { - System.out.println("User On Allowed Region"); - int requesttype = (int) Lrequest.get("type"); - System.out.println("Got Type, Getting Doc ID"); - RequestR = requesttype; - - - System.out.println("Delegation Has Started"); - if(requesttype == 0 || requesttype == 1 || requesttype == 2 || requesttype == 3 || requesttype == 4 || requesttype == 5 || requesttype == 6 || requesttype ==7 || requesttype == 8 || requesttype ==9 || requesttype ==10 || requesttype ==11 || requesttype ==12 || requesttype == 20 || requesttype == 21 || requesttype == 41 || requesttype == 18 || requesttype == 47 || requesttype == 48) { - if (requesttype == 47) - { - System.out.println("Self Updater download Request"); - BasicDBObject searchQuery = new BasicDBObject(); - BasicDBObject SqS = new BasicDBObject(); - SqS.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - try - { - - Document LCP = RGFilter.find(eq("rgkey", "UAROCKS")).first(); - String UPDT =(String)LCP.get("UURI"); - String config = (String)LCP.get("config"); - System.out.println("ThisIsConfig " + config); - updateQuery.append("$set", - new BasicDBObject().append("type", 42)); - updateQuery2.append("$set", - new BasicDBObject().append("uri",UPDT)); - updateQuery3.append("$set", - new BasicDBObject().append("winconfig", config)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - } - catch (Exception ex) - { - updateQuery.append("$set", - new BasicDBObject().append("type", 43)); - updateQuery2.append("$set", - new BasicDBObject().append("uri","F")); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - } - dCollection.updateOne(SqS, updateQuery); - dCollection.updateOne(SqS,updateQuery2); - dCollection.updateOne(SqS,updateQuery3); - dCollection.updateOne(SqS, updateQuery6); - System.out.println("Finished Updater Request"); - delegationTimer.DeleteTargetRequest(ClientID); - - } - - if (requesttype == 41) - { - System.out.println("Internal Launcher Download Request"); - BasicDBObject searchQuery = new BasicDBObject(); - BasicDBObject SqS = new BasicDBObject(); - SqS.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - try - { - Document LCP = RGFilter.find(eq("rgkey", "UAROCKS")).first(); - String UPDT =(String)LCP.get("URI"); - updateQuery.append("$set", - new BasicDBObject().append("type", 42)); - updateQuery2.append("$set", - new BasicDBObject().append("uri",UPDT)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - } - catch (Exception ex) - { - updateQuery.append("$set", - new BasicDBObject().append("type", 43)); - updateQuery2.append("$set", - new BasicDBObject().append("uri","F")); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - } - dCollection.updateOne(SqS, updateQuery); - dCollection.updateOne(SqS,updateQuery2); - dCollection.updateOne(SqS, updateQuery6); - System.out.println("Finished Updater Request"); - delegationTimer.DeleteTargetRequest(ClientID); - - } - if (requesttype == 0) { - int CTOKEN = (int) Lrequest.get("Token"); - System.out.println("Sync Request (Read)"); - Document accountServer; - String Password; - int Token; - String Fname; - String Path; - String UserName; - String Email; - try { - accountServer = accountS.find(eq("Token", CTOKEN)).first(); - Token = (int) accountServer.get("Token"); - if (accountServer.get("Status").equals(true)) { - if (Token == CTOKEN) { - - Token = (int) accountServer.get("Token"); - Password = (String) accountServer.get("Password"); - Fname = (String) accountServer.get("FName"); - Path = (String) accountServer.get("Path"); - Email = (String) accountServer.get("Email"); - UserName = (String) accountServer.get("User"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery5 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - BasicDBObject updateQuery7 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 12)); - updateQuery1.append("$set", - new BasicDBObject().append("Token", Token)); - updateQuery2.append("$set", - new BasicDBObject().append("Fname", Fname)); - updateQuery3.append("$set", - new BasicDBObject().append("Path", Path)); - updateQuery4.append("$set", - new BasicDBObject().append("User", UserName)); - updateQuery5.append("$set", - new BasicDBObject().append("Password", Password)); - updateQuery7.append("$set", - new BasicDBObject().append("Email", Email)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - dCollection.updateOne(searchQuery, updateQuery2); - dCollection.updateOne(searchQuery, updateQuery3); - dCollection.updateOne(searchQuery, updateQuery4); - dCollection.updateOne(searchQuery, updateQuery5); - dCollection.updateOne(searchQuery, updateQuery6); - dCollection.updateOne(searchQuery, updateQuery7); - delegationTimer.DeleteTargetRequest(ClientID); - System.out.println("Finished Sync Read Op"); - } else { - System.out.println("Sync Failure"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("rid", Lrequest.get("rid")); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 9)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - //delegationTimer.trigger(); - } - } else { - System.out.println("Banned Account"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 11)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - } - } catch(MongoCommandException ERC){ - System.out.println("Malformed Request"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } - } - System.out.println("Lets Service This Request: " + ClientID); - //sync write request - if (requesttype == 1) { - System.out.println("Sync Request (Write)"); - int CTOKEN = (int) Lrequest.get("Token"); - System.out.println("Got Token."); - Document accountServer; - int Token; - String Fname; - String Path; - String UserName; - try { - accountServer = accountS.find(eq("Token", CTOKEN)).first(); - Token = (int) accountServer.get("Token"); - if (accountServer.get("Status").equals(true)) { - System.out.println("Account is OK"); - if (Token == CTOKEN) { - System.out.println("Logged In"); - Token = (int) Lrequest.get("Token"); - Fname = (String) Lrequest.get("FName"); - Path = (String) Lrequest.get("Path"); - UserName = (String) Lrequest.get("User"); - System.out.println("Got info."); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("Token", Token); - BasicDBObject SqS = new BasicDBObject(); - SqS.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - System.out.println("Made Objects"); - updateQuery.append("$set", - new BasicDBObject().append("type", 12)); - updateQuery2.append("$set", - new BasicDBObject().append("FName", Fname)); - updateQuery3.append("$set", - new BasicDBObject().append("Path", Path)); - updateQuery4.append("$set", - new BasicDBObject().append("User", UserName)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(SqS, updateQuery); - dCollection.updateOne(SqS, updateQuery6); - accountS.updateOne(searchQuery, updateQuery2); - accountS.updateOne(searchQuery, updateQuery3); - accountS.updateOne(searchQuery, updateQuery4); - System.out.println("Updated Account"); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } else { - System.out.println("Sync Failure"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("rid",(int) Lrequest.get("rid")); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 9)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } - } else { - System.out.println("Banned Account"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 11)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - } - } catch(MongoCommandException ERC){ - System.out.println("Malformed Request"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } - } - if (requesttype == 2) { - System.out.println("Login Request (USR&PASS)"); - String username = (String) Lrequest.get("User"); - String password = (String) Lrequest.get("Password"); - Document accountServer; - String Password; - int Token; - String Fname; - String Path; - String UserName; - String Email; - try { - accountServer = accountS.find(eq("User", username)).first(); - Password = (String) accountServer.get("Password"); - if (accountServer.get("Status").equals(true)) { - if (Password.equals(password)) { - Token = (int) accountServer.get("Token"); - Fname = (String) accountServer.get("FName"); - Path = (String) accountServer.get("Path"); - Email = (String) accountServer.get("Email"); - UserName = (String) accountServer.get("User"); - lastNet = (String) accountServer.get("lastNet"); - localNet.macRead(Macid,lastNet,Email,UserName,Token); - // com.jamesquinley.Asecure.emailVerify.SendEmailThroughGmail(Email, UserName); - - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery5 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - BasicDBObject updateQuery7 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 8)); - updateQuery1.append("$set", - new BasicDBObject().append("Token", Token)); - updateQuery2.append("$set", - new BasicDBObject().append("Fname", Fname)); - updateQuery3.append("$set", - new BasicDBObject().append("Path", Path)); - updateQuery4.append("$set", - new BasicDBObject().append("User", UserName)); - updateQuery5.append("$set", - new BasicDBObject().append("Password", Password)); - updateQuery7.append("$set", - new BasicDBObject().append("Email", Email)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - // System.out.println("Sending Info To Forwarding Server"); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - dCollection.updateOne(searchQuery, updateQuery2); - dCollection.updateOne(searchQuery, updateQuery3); - dCollection.updateOne(searchQuery, updateQuery4); - dCollection.updateOne(searchQuery, updateQuery5); - dCollection.updateOne(searchQuery, updateQuery6); - dCollection.updateOne(searchQuery, updateQuery7); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } else { - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } - } else { - System.out.println("Banned Account"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 11)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - } - } catch (Exception ERC) { - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 9)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } - - } - if (requesttype == 3) { - System.out.println("Login Request (TKN)"); - int CTOKEN = (int) Lrequest.get("Token"); - // Document TResolve = dCollection.find(eq("type", 3)).first(); - Document accountServer; - int TKN; - String Password; - String Fname; - String Path; - String UserName; - String Email; - try { - accountServer = accountS.find(eq("Token", CTOKEN)).first(); - TKN = (int) accountServer.get("Token"); - if (accountServer.get("Status").equals(true)) { - if (TKN == CTOKEN) { - TKN = (int) accountServer.get("Token"); - Password = (String) accountServer.get("Password"); - Fname = (String) accountServer.get("FName"); - Path = (String) accountServer.get("Path"); - Email = (String) accountServer.get("Email"); - UserName = (String) accountServer.get("User"); - lastNet = (String) accountServer.get("lastNet"); - localNet.macRead(Macid,lastNet,Email,UserName,TKN); - // com.jamesquinley.Asecure.emailVerify.SendEmailThroughGmail(Email, UserName); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery5 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - BasicDBObject updateQuery7 = new BasicDBObject(); - BasicDBObject updateQuery8 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 8)); - updateQuery2.append("$set", - new BasicDBObject().append("Fname", Fname)); - updateQuery3.append("$set", - new BasicDBObject().append("Path", Path)); - updateQuery4.append("$set", - new BasicDBObject().append("User", UserName)); - updateQuery5.append("$set", - new BasicDBObject().append("Password", Password)); - updateQuery7.append("$set", - new BasicDBObject().append("Email", Email)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - updateQuery8.append("$set", - new BasicDBObject().append("Token", TKN)); - System.out.println("Sending Info To Forwarding Server"); - dCollection.updateOne(searchQuery, updateQuery8); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery2); - dCollection.updateOne(searchQuery, updateQuery3); - dCollection.updateOne(searchQuery, updateQuery4); - dCollection.updateOne(searchQuery, updateQuery5); - dCollection.updateOne(searchQuery, updateQuery6); - dCollection.updateOne(searchQuery, updateQuery8); - dCollection.updateOne(searchQuery, updateQuery7); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - } else { - System.out.println("Login Failure"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 9)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - - } - } else { - System.out.println("Banned Account"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 11)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - - } - } catch (MongoCommandException ERC) { - System.out.println("Malformed Request"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - //delegationTimer.trigger(); - } - } - if (requesttype == 18) { - //TOKEN LOGIN FOR GAME, DOES NOT SEND EMAIL, LAUNCHER WILL NOT USE THIS. - System.out.println("Game Login"); - int CTOKEN = (int) Lrequest.get("Token"); - Document accountServer; - int TKN; - String Password; - String Fname; - String Path; - String UserName; - String Email; - String Uid; - System.out.println("VarInit"); - try { - accountServer = accountS.find(eq("Token", CTOKEN)).first(); - System.out.println("PollServer"); - TKN = (int) accountServer.get("Token"); - System.out.println("TokenPulled"); - if (accountServer.get("Status").equals(true)) { - if (TKN == CTOKEN) { - System.out.println("TokenGood"); - TKN = (int) accountServer.get("Token"); - Password = (String) accountServer.get("Password"); - Fname = (String) accountServer.get("FName"); - Path = (String) accountServer.get("Path"); - Email = (String) accountServer.get("Email"); - // Uid = (String) accountServer.get("Uid"); - UserName = (String) accountServer.get("User"); - System.out.println("GotAccount"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); - String apiV = (String) Filter.get("gameAPI"); - String MOTD = (String) Filter.get("motd"); - System.out.println("ApiGrabbed"); - - - - System.out.println("initBasicDBObject"); - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery5 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - BasicDBObject updateQuery7 = new BasicDBObject(); - BasicDBObject updateQuery8 = new BasicDBObject(); - BasicDBObject updateQuery9 = new BasicDBObject(); - BasicDBObject updateQuery10 = new BasicDBObject(); - // BasicDBObject updateQuery11 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 8)); - updateQuery2.append("$set", - new BasicDBObject().append("Fname", Fname)); - updateQuery3.append("$set", - new BasicDBObject().append("Path", Path)); - updateQuery4.append("$set", - new BasicDBObject().append("User", UserName)); - updateQuery5.append("$set", - new BasicDBObject().append("Password", Password)); - updateQuery7.append("$set", - new BasicDBObject().append("Email", Email)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - updateQuery8.append("$set", - new BasicDBObject().append("Token", TKN)); - updateQuery9.append("$set", - new BasicDBObject().append("api",apiV)); - updateQuery10.append("$set", - new BasicDBObject().append("motd",MOTD)); - System.out.println("Sending Info To Forwarding Server"); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery10); - dCollection.updateOne(searchQuery, updateQuery2); - dCollection.updateOne(searchQuery, updateQuery3); - dCollection.updateOne(searchQuery, updateQuery4); - dCollection.updateOne(searchQuery, updateQuery5); - dCollection.updateOne(searchQuery, updateQuery8); - dCollection.updateOne(searchQuery, updateQuery7); - dCollection.updateOne(searchQuery, updateQuery9); - dCollection.updateOne(searchQuery, updateQuery6); - //delegationTimer.trigger(); - System.out.println("Pushed"); - delegationTimer.DeleteTargetRequest(ClientID); - } else { - System.out.println("Login Failure"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 9)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); - - } - } else { - System.out.println("Banned Account"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 11)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - } - } catch (MongoCommandException ERC) { - System.out.println("Mongodb Error " + ERC); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - //delegationTimer.trigger(); - } - } - if (requesttype == 10) - { - System.out.println("Account Creation Request"); - Document DServer = dCollection.find(eq("clientid",ClientID)).first(); - String User = (String) DServer.get("User"); - String Password = (String) DServer.get("Password"); - String Email = (String) DServer.get("Email"); - String FName = (String) DServer.get("FName"); - int min = 100000000; - int max = 999999999; - double tokenGEN = Math.random()*(max-min+1)+min; - int tokenSTGEN = (int) tokenGEN; - -//verify open cert - try { - Document DupeUser = accountS.find(eq("User", User)).first(); - String DUPE = (String) DupeUser.get("User"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 6)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - } catch (Exception exr) { - System.out.println("Username Is Open"); - try { - Document DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); - int DupeToke1n = (int) DupeToken.get("Token"); - - Boolean TokenOpen = false; - while (TokenOpen == false) { - tokenGEN = Math.random()*(max-min+1)+min; - tokenSTGEN = (int) tokenGEN; - try { - DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); - DupeToke1n = (int) DupeToken.get("Token"); - System.out.println("Token Is Reserved, Try Again."); - tokenGEN = Math.random()*(max-min+1)+min; - tokenSTGEN = (int) tokenGEN; - } catch (Exception exDr) { - TokenOpen = true; - System.out.println("Token Free (While EXP)"); - } - } - } catch (Exception exrs) { - UUID uid = UUID.randomUUID(); - System.out.println("Token Free (Main)"); - System.out.println("Creating."); - Document createForm = new Document(); - Document FnetInit = new Document(); - createForm.append("User", User); - createForm.append("Password", Password); - createForm.append("Status", true); - createForm.append("Flagged", false); - createForm.append("Email", Email); - createForm.append("FName", FName); - createForm.append("Entitlements", "NA"); - createForm.append("Path", "C:\\ObsidianCoreStudios\\Application\\"); - createForm.append("Freinds", " "); - createForm.append("Token", tokenSTGEN); - createForm.append("Control", 1); - createForm.append("Upgrade", 0); - //createForm.append("Uid",uid); - createForm.append("lastNet", Macid); - accountS.insertOne(createForm); - FnetInit.append("User", User); - FnetInit.append("Status", true); - FnetInit.append("Freinds", " "); - FnetInit.append("Token", tokenSTGEN); - FnetInit.append("Control", 1); - FNETDOC.insertOne(FnetInit); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - com.jamesquinley.Asecure.emailVerify.Onboarding(Email, User); - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 4)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - System.out.println("Update Request With Finished Status"); - delegationTimer.DeleteTargetRequest(ClientID); - - } - - } - } - if (requesttype == 20) - //TODO rewrite to just need username, password will be set by system later - { - delegationTimer.DeleteTargetRequest(ClientID); - System.out.println("Account Creation Request"); - Document DServer = dCollection.find(eq("clientid",ClientID)).first(); - String User = (String) DServer.get("User"); - String Password = (String) DServer.get("Password"); - // String Email = (String) DServer.get("Email"); - String FName = User; - int min = 100000000; - int max = 999999999; - double tokenGEN = Math.random()*(max-min+1)+min; - int tokenSTGEN = (int) tokenGEN; - -//verify open cert - try { - Document DupeUser = accountS.find(eq("User", User)).first(); - String DUPE = (String) DupeUser.get("User"); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 6)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - System.out.println("User Exists"); - delegationTimer.DeleteTargetRequest(ClientID); - } catch (Exception exr) { - System.out.println("Username Is Open"); - try { - Document DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); - int DupeToke1n = (int) DupeToken.get("Token"); - - Boolean TokenOpen = false; - while (TokenOpen == false) { - tokenGEN = Math.random()*(max-min+1)+min; - tokenSTGEN = (int) tokenGEN; - try { - DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); - DupeToke1n = (int) DupeToken.get("Token"); - System.out.println("Token Is Reserved, Try Again."); - tokenGEN = Math.random()*(max-min+1)+min; - tokenSTGEN = (int) tokenGEN; - } catch (Exception exDr) { - TokenOpen = true; - System.out.println("Token Free (While EXP)"); - } - } - } catch (Exception exrs) { - System.out.println("Token Free (Main)"); - System.out.println("Creating."); - Document createForm = new Document(); - Document FnetInit = new Document(); - createForm.append("User", User); - createForm.append("Status", true); - createForm.append("limited", true); - createForm.append("Flagged", false); - createForm.append("Password", Password); - createForm.append("FName", FName); - createForm.append("Entitlements", "NA"); - createForm.append("Path", "C:\\ObsidianCoreStudios\\Launcher\\AOTSK\\"); - createForm.append("Token", tokenSTGEN); - createForm.append("Control", 1); - accountS.insertOne(createForm); - //create Fnet user - FnetInit.append("User", User); - FnetInit.append("Status", true); - FnetInit.append("Freinds", " "); - FnetInit.append("Token", tokenSTGEN); - FnetInit.append("Control", 1); - FNETDOC.insertOne(FnetInit); - - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 4)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - System.out.println("Update Request With Finished Status"); - delegationTimer.DeleteTargetRequest(ClientID); - - } - - } - } - if (requesttype == 21) - { - //Friends Network Login Goes Here, Fun. - } - if (requesttype == 48) { - - System.out.println("Launcher Startup Request"); - String lV = (String) Lrequest.get("version"); - String platKey = (String) Lrequest.get("key"); - System.out.println("GrabbedInfo"); - try { - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); - String pKey = (String) Filter.get("platformKey"); - String version = (String) Filter.get("platformVersion"); - String platformUpdateNotes = (String) Filter.get("platformUpdateNotes"); - String dr = (String) Filter.get("deniedmsg"); - String nw = (String) Filter.get("lnews"); - System.out.println("ApiGrabbed"); - - - - System.out.println("initBasicDBObject"); - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery2 = new BasicDBObject(); - BasicDBObject updateQuery3 = new BasicDBObject(); - BasicDBObject updateQuery4 = new BasicDBObject(); - BasicDBObject updateQuery6 = new BasicDBObject(); - BasicDBObject updateQuery7 = new BasicDBObject(); - BasicDBObject updateQuery8 = new BasicDBObject(); - // BasicDBObject updateQuery11 = new BasicDBObject(); - if (pKey.equals(platKey)) - { - if (lV.equals(version)) - { - System.out.println("Approved"); - updateQuery.append("$set", - new BasicDBObject().append("type", 49)); - } else - { - System.out.println("UpdateRequred"); - updateQuery.append("$set", - new BasicDBObject().append("type", 51)); - } - } else - { - updateQuery.append("$set", - new BasicDBObject().append("type", 50)); - updateQuery7.append("$set", - new BasicDBObject().append("dn", dr)); - System.out.println("Denied"); - } - - updateQuery2.append("$set", - new BasicDBObject().append("uNotes", platformUpdateNotes)); - updateQuery3.append("$set", - new BasicDBObject().append("pushV", version)); - updateQuery4.append("$set", - new BasicDBObject().append("keyReq",pKey)); - updateQuery8.append("$set", - new BasicDBObject().append("news",nw)); - updateQuery6.append("$set", - new BasicDBObject().append("status", true)); - updateQuery7.append("$set", - new BasicDBObject().append("dn", dr)); - System.out.println(dr); - System.out.println("Sending Info To Forwarding Server"); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery2); - dCollection.updateOne(searchQuery, updateQuery3); - dCollection.updateOne(searchQuery, updateQuery4); - dCollection.updateOne(searchQuery, updateQuery7); - dCollection.updateOne(searchQuery, updateQuery8); - dCollection.updateOne(searchQuery, updateQuery6); - - //delegationTimer.trigger(); - System.out.println("Pushed"); - delegationTimer.DeleteTargetRequest(ClientID); - - } catch (MongoCommandException ERC) { - System.out.println("Mongodb Error " + ERC); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); - - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); - //delegationTimer.trigger(); - } - } - } else { - System.out.println("Malformed Request, Non Recoverable (Request Type Not Found)"); + if (blockedRG.contains(RG)) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("rid", Lrequest.get("rid")); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); updateQuery.append("$set", - new BasicDBObject().append("type", 7)); + new BasicDBObject().append("type", 19)); updateQuery1.append("$set", new BasicDBObject().append("status", true)); - Lrequest.append("status",true); - dCollection.updateOne(searchQuery, updateQuery1); dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); delegationTimer.DeleteTargetRequest(ClientID); + } else { + System.out.println("User On Allowed Region"); + int requesttype = (int) Lrequest.get("type"); + System.out.println("Got Type, Getting Doc ID"); + RequestR = requesttype; + + System.out.println("Delegation Has Started"); + if (requesttype == 0 || requesttype == 1 || requesttype == 2 || requesttype == 3 || requesttype == 4 || requesttype == 5 || requesttype == 6 || requesttype == 7 || requesttype == 8 || requesttype == 9 || requesttype == 10 || requesttype == 11 || requesttype == 12 || requesttype == 20 || requesttype == 21 || requesttype == 41 || requesttype == 18 || requesttype == 47 || requesttype == 48) { + if (requesttype == 47) { + System.out.println("Self Updater download Request"); + BasicDBObject searchQuery = new BasicDBObject(); + BasicDBObject SqS = new BasicDBObject(); + SqS.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + try { + + Document LCP = RGFilter.find(eq("rgkey", "UAROCKS")).first(); + String UPDT = (String) LCP.get("UURI"); + String config = (String) LCP.get("config"); + System.out.println("ThisIsConfig " + config); + updateQuery.append("$set", + new BasicDBObject().append("type", 42)); + updateQuery2.append("$set", + new BasicDBObject().append("uri", UPDT)); + updateQuery3.append("$set", + new BasicDBObject().append("winconfig", config)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + } catch (Exception ex) { + updateQuery.append("$set", + new BasicDBObject().append("type", 43)); + updateQuery2.append("$set", + new BasicDBObject().append("uri", "F")); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + } + dCollection.updateOne(SqS, updateQuery); + dCollection.updateOne(SqS, updateQuery2); + dCollection.updateOne(SqS, updateQuery3); + dCollection.updateOne(SqS, updateQuery6); + System.out.println("Finished Updater Request"); + delegationTimer.DeleteTargetRequest(ClientID); + + } + + if (requesttype == 41) { + System.out.println("Internal Launcher Download Request"); + BasicDBObject searchQuery = new BasicDBObject(); + BasicDBObject SqS = new BasicDBObject(); + SqS.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + try { + Document LCP = RGFilter.find(eq("rgkey", "UAROCKS")).first(); + String UPDT = (String) LCP.get("URI"); + updateQuery.append("$set", + new BasicDBObject().append("type", 42)); + updateQuery2.append("$set", + new BasicDBObject().append("uri", UPDT)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + } catch (Exception ex) { + updateQuery.append("$set", + new BasicDBObject().append("type", 43)); + updateQuery2.append("$set", + new BasicDBObject().append("uri", "F")); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + } + dCollection.updateOne(SqS, updateQuery); + dCollection.updateOne(SqS, updateQuery2); + dCollection.updateOne(SqS, updateQuery6); + System.out.println("Finished Updater Request"); + delegationTimer.DeleteTargetRequest(ClientID); + + } + if (requesttype == 0) { + int CTOKEN = (int) Lrequest.get("Token"); + System.out.println("Sync Request (Read)"); + Document accountServer; + String Password; + int Token; + String Fname; + String Path; + String UserName; + String Email; + try { + accountServer = accountS.find(eq("Token", CTOKEN)).first(); + Token = (int) accountServer.get("Token"); + if (accountServer.get("Status").equals(true)) { + if (Token == CTOKEN) { + + Token = (int) accountServer.get("Token"); + Password = (String) accountServer.get("Password"); + Fname = (String) accountServer.get("FName"); + Path = (String) accountServer.get("Path"); + Email = (String) accountServer.get("Email"); + UserName = (String) accountServer.get("User"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery5 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + BasicDBObject updateQuery7 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 12)); + updateQuery1.append("$set", + new BasicDBObject().append("Token", Token)); + updateQuery2.append("$set", + new BasicDBObject().append("Fname", Fname)); + updateQuery3.append("$set", + new BasicDBObject().append("Path", Path)); + updateQuery4.append("$set", + new BasicDBObject().append("User", UserName)); + updateQuery5.append("$set", + new BasicDBObject().append("Password", Password)); + updateQuery7.append("$set", + new BasicDBObject().append("Email", Email)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + dCollection.updateOne(searchQuery, updateQuery2); + dCollection.updateOne(searchQuery, updateQuery3); + dCollection.updateOne(searchQuery, updateQuery4); + dCollection.updateOne(searchQuery, updateQuery5); + dCollection.updateOne(searchQuery, updateQuery6); + dCollection.updateOne(searchQuery, updateQuery7); + delegationTimer.DeleteTargetRequest(ClientID); + System.out.println("Finished Sync Read Op"); + } else { + System.out.println("Sync Failure"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("rid", Lrequest.get("rid")); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 9)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + //delegationTimer.trigger(); + } + } else { + System.out.println("Banned Account"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 11)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + } + } catch (MongoCommandException ERC) { + System.out.println("Malformed Request"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } + } + System.out.println("Lets Service This Request: " + ClientID); + //sync write request + if (requesttype == 1) { + System.out.println("Sync Request (Write)"); + int CTOKEN = (int) Lrequest.get("Token"); + System.out.println("Got Token."); + Document accountServer; + int Token; + String Fname; + String Path; + String UserName; + try { + accountServer = accountS.find(eq("Token", CTOKEN)).first(); + Token = (int) accountServer.get("Token"); + if (accountServer.get("Status").equals(true)) { + System.out.println("Account is OK"); + if (Token == CTOKEN) { + System.out.println("Logged In"); + Token = (int) Lrequest.get("Token"); + Fname = (String) Lrequest.get("FName"); + Path = (String) Lrequest.get("Path"); + UserName = (String) Lrequest.get("User"); + System.out.println("Got info."); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("Token", Token); + BasicDBObject SqS = new BasicDBObject(); + SqS.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + System.out.println("Made Objects"); + updateQuery.append("$set", + new BasicDBObject().append("type", 12)); + updateQuery2.append("$set", + new BasicDBObject().append("FName", Fname)); + updateQuery3.append("$set", + new BasicDBObject().append("Path", Path)); + updateQuery4.append("$set", + new BasicDBObject().append("User", UserName)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(SqS, updateQuery); + dCollection.updateOne(SqS, updateQuery6); + accountS.updateOne(searchQuery, updateQuery2); + accountS.updateOne(searchQuery, updateQuery3); + accountS.updateOne(searchQuery, updateQuery4); + System.out.println("Updated Account"); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } else { + System.out.println("Sync Failure"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("rid", (int) Lrequest.get("rid")); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 9)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } + } else { + System.out.println("Banned Account"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 11)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + } + } catch (MongoCommandException ERC) { + System.out.println("Malformed Request"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } + } + if (requesttype == 2) { + System.out.println("Login Request (USR&PASS)"); + String username = (String) Lrequest.get("User"); + String password = (String) Lrequest.get("Password"); + Document accountServer; + String Password; + int Token; + String Fname; + String Path; + String UserName; + String Email; + try { + accountServer = accountS.find(eq("User", username)).first(); + Password = (String) accountServer.get("Password"); + if (accountServer.get("Status").equals(true)) { + if (Password.equals(password)) { + Token = (int) accountServer.get("Token"); + Fname = (String) accountServer.get("FName"); + Path = (String) accountServer.get("Path"); + Email = (String) accountServer.get("Email"); + UserName = (String) accountServer.get("User"); + lastNet = (String) accountServer.get("lastNet"); + localNet.macRead(Macid, lastNet, Email, UserName, Token); + // com.jamesquinley.Asecure.emailVerify.SendEmailThroughGmail(Email, UserName); + + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery5 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + BasicDBObject updateQuery7 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 8)); + updateQuery1.append("$set", + new BasicDBObject().append("Token", Token)); + updateQuery2.append("$set", + new BasicDBObject().append("Fname", Fname)); + updateQuery3.append("$set", + new BasicDBObject().append("Path", Path)); + updateQuery4.append("$set", + new BasicDBObject().append("User", UserName)); + updateQuery5.append("$set", + new BasicDBObject().append("Password", Password)); + updateQuery7.append("$set", + new BasicDBObject().append("Email", Email)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + // System.out.println("Sending Info To Forwarding Server"); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + dCollection.updateOne(searchQuery, updateQuery2); + dCollection.updateOne(searchQuery, updateQuery3); + dCollection.updateOne(searchQuery, updateQuery4); + dCollection.updateOne(searchQuery, updateQuery5); + dCollection.updateOne(searchQuery, updateQuery6); + dCollection.updateOne(searchQuery, updateQuery7); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } else { + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } + } else { + System.out.println("Banned Account"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 11)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + } + } catch (Exception ERC) { + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 9)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } + + } + if (requesttype == 3) { + System.out.println("Login Request (TKN)"); + int CTOKEN = (int) Lrequest.get("Token"); + // Document TResolve = dCollection.find(eq("type", 3)).first(); + Document accountServer; + int TKN; + String Password; + String Fname; + String Path; + String UserName; + String Email; + try { + accountServer = accountS.find(eq("Token", CTOKEN)).first(); + TKN = (int) accountServer.get("Token"); + if (accountServer.get("Status").equals(true)) { + if (TKN == CTOKEN) { + TKN = (int) accountServer.get("Token"); + Password = (String) accountServer.get("Password"); + Fname = (String) accountServer.get("FName"); + Path = (String) accountServer.get("Path"); + Email = (String) accountServer.get("Email"); + UserName = (String) accountServer.get("User"); + lastNet = (String) accountServer.get("lastNet"); + localNet.macRead(Macid, lastNet, Email, UserName, TKN); + // com.jamesquinley.Asecure.emailVerify.SendEmailThroughGmail(Email, UserName); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery5 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + BasicDBObject updateQuery7 = new BasicDBObject(); + BasicDBObject updateQuery8 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 8)); + updateQuery2.append("$set", + new BasicDBObject().append("Fname", Fname)); + updateQuery3.append("$set", + new BasicDBObject().append("Path", Path)); + updateQuery4.append("$set", + new BasicDBObject().append("User", UserName)); + updateQuery5.append("$set", + new BasicDBObject().append("Password", Password)); + updateQuery7.append("$set", + new BasicDBObject().append("Email", Email)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + updateQuery8.append("$set", + new BasicDBObject().append("Token", TKN)); + System.out.println("Sending Info To Forwarding Server"); + dCollection.updateOne(searchQuery, updateQuery8); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery2); + dCollection.updateOne(searchQuery, updateQuery3); + dCollection.updateOne(searchQuery, updateQuery4); + dCollection.updateOne(searchQuery, updateQuery5); + dCollection.updateOne(searchQuery, updateQuery6); + dCollection.updateOne(searchQuery, updateQuery8); + dCollection.updateOne(searchQuery, updateQuery7); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + } else { + System.out.println("Login Failure"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 9)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + + } + } else { + System.out.println("Banned Account"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 11)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + + } + } catch (MongoCommandException ERC) { + System.out.println("Malformed Request"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + //delegationTimer.trigger(); + } + } + if (requesttype == 18) { + //TOKEN LOGIN FOR GAME, DOES NOT SEND EMAIL, LAUNCHER WILL NOT USE THIS. + System.out.println("Game Login"); + int CTOKEN = (int) Lrequest.get("Token"); + Document accountServer; + int TKN; + String Password; + String Fname; + String Path; + String UserName; + String Email; + String Uid; + System.out.println("VarInit"); + try { + accountServer = accountS.find(eq("Token", CTOKEN)).first(); + System.out.println("PollServer"); + TKN = (int) accountServer.get("Token"); + System.out.println("TokenPulled"); + if (accountServer.get("Status").equals(true)) { + if (TKN == CTOKEN) { + System.out.println("TokenGood"); + TKN = (int) accountServer.get("Token"); + Password = (String) accountServer.get("Password"); + Fname = (String) accountServer.get("FName"); + Path = (String) accountServer.get("Path"); + Email = (String) accountServer.get("Email"); + // Uid = (String) accountServer.get("Uid"); + UserName = (String) accountServer.get("User"); + System.out.println("GotAccount"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); + String apiV = (String) Filter.get("gameAPI"); + String MOTD = (String) Filter.get("motd"); + System.out.println("ApiGrabbed"); + + + System.out.println("initBasicDBObject"); + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery5 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + BasicDBObject updateQuery7 = new BasicDBObject(); + BasicDBObject updateQuery8 = new BasicDBObject(); + BasicDBObject updateQuery9 = new BasicDBObject(); + BasicDBObject updateQuery10 = new BasicDBObject(); + // BasicDBObject updateQuery11 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 8)); + updateQuery2.append("$set", + new BasicDBObject().append("Fname", Fname)); + updateQuery3.append("$set", + new BasicDBObject().append("Path", Path)); + updateQuery4.append("$set", + new BasicDBObject().append("User", UserName)); + updateQuery5.append("$set", + new BasicDBObject().append("Password", Password)); + updateQuery7.append("$set", + new BasicDBObject().append("Email", Email)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + updateQuery8.append("$set", + new BasicDBObject().append("Token", TKN)); + updateQuery9.append("$set", + new BasicDBObject().append("api", apiV)); + updateQuery10.append("$set", + new BasicDBObject().append("motd", MOTD)); + System.out.println("Sending Info To Forwarding Server"); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery10); + dCollection.updateOne(searchQuery, updateQuery2); + dCollection.updateOne(searchQuery, updateQuery3); + dCollection.updateOne(searchQuery, updateQuery4); + dCollection.updateOne(searchQuery, updateQuery5); + dCollection.updateOne(searchQuery, updateQuery8); + dCollection.updateOne(searchQuery, updateQuery7); + dCollection.updateOne(searchQuery, updateQuery9); + dCollection.updateOne(searchQuery, updateQuery6); + //delegationTimer.trigger(); + System.out.println("Pushed"); + delegationTimer.DeleteTargetRequest(ClientID); + } else { + System.out.println("Login Failure"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 9)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + //delegationTimer.trigger(); + delegationTimer.DeleteTargetRequest(ClientID); + + } + } else { + System.out.println("Banned Account"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 11)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + } + } catch (MongoCommandException ERC) { + System.out.println("Mongodb Error " + ERC); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + //delegationTimer.trigger(); + } + } + if (requesttype == 10) { + System.out.println("Account Creation Request"); + Document DServer = dCollection.find(eq("clientid", ClientID)).first(); + String User = (String) DServer.get("User"); + String Password = (String) DServer.get("Password"); + String Email = (String) DServer.get("Email"); + String FName = (String) DServer.get("FName"); + int min = 100000000; + int max = 999999999; + double tokenGEN = Math.random() * (max - min + 1) + min; + int tokenSTGEN = (int) tokenGEN; + +//verify open cert + try { + Document DupeUser = accountS.find(eq("User", User)).first(); + String DUPE = (String) DupeUser.get("User"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 6)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + } catch (Exception exr) { + System.out.println("Username Is Open"); + try { + Document DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); + int DupeToke1n = (int) DupeToken.get("Token"); + + Boolean TokenOpen = false; + while (TokenOpen == false) { + tokenGEN = Math.random() * (max - min + 1) + min; + tokenSTGEN = (int) tokenGEN; + try { + DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); + DupeToke1n = (int) DupeToken.get("Token"); + System.out.println("Token Is Reserved, Try Again."); + tokenGEN = Math.random() * (max - min + 1) + min; + tokenSTGEN = (int) tokenGEN; + } catch (Exception exDr) { + TokenOpen = true; + System.out.println("Token Free (While EXP)"); + } + } + } catch (Exception exrs) { + UUID uid = UUID.randomUUID(); + System.out.println("Token Free (Main)"); + System.out.println("Creating."); + Document createForm = new Document(); + Document FnetInit = new Document(); + createForm.append("User", User); + createForm.append("Password", Password); + createForm.append("Status", true); + createForm.append("Flagged", false); + createForm.append("Email", Email); + createForm.append("FName", FName); + createForm.append("Entitlements", "NA"); + createForm.append("Path", "C:\\ObsidianCoreStudios\\Application\\"); + createForm.append("Freinds", " "); + createForm.append("Token", tokenSTGEN); + createForm.append("Control", 1); + createForm.append("Upgrade", 0); + //createForm.append("Uid",uid); + createForm.append("lastNet", Macid); + accountS.insertOne(createForm); + FnetInit.append("User", User); + FnetInit.append("Status", true); + FnetInit.append("Freinds", " "); + FnetInit.append("Token", tokenSTGEN); + FnetInit.append("Control", 1); + FNETDOC.insertOne(FnetInit); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + com.jamesquinley.Asecure.emailVerify.Onboarding(Email, User); + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 4)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + System.out.println("Update Request With Finished Status"); + delegationTimer.DeleteTargetRequest(ClientID); + + } + + } + } + if (requesttype == 20) + //TODO rewrite to just need username, password will be set by system later + { + delegationTimer.DeleteTargetRequest(ClientID); + System.out.println("Account Creation Request"); + Document DServer = dCollection.find(eq("clientid", ClientID)).first(); + String User = (String) DServer.get("User"); + String Password = (String) DServer.get("Password"); + // String Email = (String) DServer.get("Email"); + String FName = User; + int min = 100000000; + int max = 999999999; + double tokenGEN = Math.random() * (max - min + 1) + min; + int tokenSTGEN = (int) tokenGEN; + +//verify open cert + try { + Document DupeUser = accountS.find(eq("User", User)).first(); + String DUPE = (String) DupeUser.get("User"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 6)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + System.out.println("User Exists"); + delegationTimer.DeleteTargetRequest(ClientID); + } catch (Exception exr) { + System.out.println("Username Is Open"); + try { + Document DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); + int DupeToke1n = (int) DupeToken.get("Token"); + + Boolean TokenOpen = false; + while (TokenOpen == false) { + tokenGEN = Math.random() * (max - min + 1) + min; + tokenSTGEN = (int) tokenGEN; + try { + DupeToken = accountS.find(eq("Token", tokenSTGEN)).first(); + DupeToke1n = (int) DupeToken.get("Token"); + System.out.println("Token Is Reserved, Try Again."); + tokenGEN = Math.random() * (max - min + 1) + min; + tokenSTGEN = (int) tokenGEN; + } catch (Exception exDr) { + TokenOpen = true; + System.out.println("Token Free (While EXP)"); + } + } + } catch (Exception exrs) { + System.out.println("Token Free (Main)"); + System.out.println("Creating."); + Document createForm = new Document(); + Document FnetInit = new Document(); + createForm.append("User", User); + createForm.append("Status", true); + createForm.append("limited", true); + createForm.append("Flagged", false); + createForm.append("Password", Password); + createForm.append("FName", FName); + createForm.append("Entitlements", "NA"); + createForm.append("Path", "C:\\ObsidianCoreStudios\\Launcher\\AOTSK\\"); + createForm.append("Token", tokenSTGEN); + createForm.append("Control", 1); + accountS.insertOne(createForm); + //create Fnet user + FnetInit.append("User", User); + FnetInit.append("Status", true); + FnetInit.append("Freinds", " "); + FnetInit.append("Token", tokenSTGEN); + FnetInit.append("Control", 1); + FNETDOC.insertOne(FnetInit); + + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 4)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + System.out.println("Update Request With Finished Status"); + delegationTimer.DeleteTargetRequest(ClientID); + + } + + } + } + if (requesttype == 21) { + //Friends Network Login Goes Here, Fun. + } + if (requesttype == 48) { + + System.out.println("Launcher Startup Request"); + String lV = (String) Lrequest.get("version"); + String platKey = (String) Lrequest.get("key"); + System.out.println("GrabbedInfo"); + try { + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); + String pKey = (String) Filter.get("platformKey"); + String version = (String) Filter.get("platformVersion"); + String platformUpdateNotes = (String) Filter.get("platformUpdateNotes"); + String dr = (String) Filter.get("deniedmsg"); + String nw = (String) Filter.get("lnews"); + System.out.println("ApiGrabbed"); + + + System.out.println("initBasicDBObject"); + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery2 = new BasicDBObject(); + BasicDBObject updateQuery3 = new BasicDBObject(); + BasicDBObject updateQuery4 = new BasicDBObject(); + BasicDBObject updateQuery6 = new BasicDBObject(); + BasicDBObject updateQuery7 = new BasicDBObject(); + BasicDBObject updateQuery8 = new BasicDBObject(); + // BasicDBObject updateQuery11 = new BasicDBObject(); + if (pKey.equals(platKey)) { + if (lV.equals(version)) { + System.out.println("Approved"); + updateQuery.append("$set", + new BasicDBObject().append("type", 49)); + } else { + System.out.println("UpdateRequred"); + updateQuery.append("$set", + new BasicDBObject().append("type", 51)); + } + } else { + updateQuery.append("$set", + new BasicDBObject().append("type", 50)); + updateQuery7.append("$set", + new BasicDBObject().append("dn", dr)); + System.out.println("Denied"); + } + + updateQuery2.append("$set", + new BasicDBObject().append("uNotes", platformUpdateNotes)); + updateQuery3.append("$set", + new BasicDBObject().append("pushV", version)); + updateQuery4.append("$set", + new BasicDBObject().append("keyReq", pKey)); + updateQuery8.append("$set", + new BasicDBObject().append("news", nw)); + updateQuery6.append("$set", + new BasicDBObject().append("status", true)); + updateQuery7.append("$set", + new BasicDBObject().append("dn", dr)); + System.out.println("Sending Info To Forwarding Server"); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery2); + dCollection.updateOne(searchQuery, updateQuery3); + dCollection.updateOne(searchQuery, updateQuery4); + dCollection.updateOne(searchQuery, updateQuery7); + dCollection.updateOne(searchQuery, updateQuery8); + dCollection.updateOne(searchQuery, updateQuery6); + + //delegationTimer.trigger(); + System.out.println("Pushed"); + delegationTimer.DeleteTargetRequest(ClientID); + + } catch (MongoCommandException ERC) { + System.out.println("Mongodb Error " + ERC); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery, updateQuery1); + delegationTimer.DeleteTargetRequest(ClientID); + //delegationTimer.trigger(); + } + } + } else { + System.out.println("Malformed Request, Non Recoverable (Request Type Not Found)"); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + Lrequest.append("status", true); + dCollection.updateOne(searchQuery, updateQuery1); + dCollection.updateOne(searchQuery, updateQuery); + delegationTimer.DeleteTargetRequest(ClientID); + + } } } - } catch (Exception Erp) { - System.out.println("Malformed Request, Non Recoverable ErrorInfo: " +Erp); - BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + } catch (Exception Erp) { + System.out.println("Malformed Request, Non Recoverable ErrorInfo: " +Erp); + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); - BasicDBObject updateQuery = new BasicDBObject(); - BasicDBObject updateQuery1 = new BasicDBObject(); - updateQuery.append("$set", - new BasicDBObject().append("type", 7)); - updateQuery1.append("$set", - new BasicDBObject().append("status", true)); - updateQuery1.append("$set", - new BasicDBObject().append("pos", "934")); - Lrequest.append("status",true); - dCollection.updateOne(searchQuery, updateQuery1); - dCollection.updateOne(searchQuery, updateQuery); - dCollection.updateOne(searchQuery,updateQuery); - delegationTimer.DeleteTargetRequest(ClientID); + BasicDBObject updateQuery = new BasicDBObject(); + BasicDBObject updateQuery1 = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("type", 7)); + updateQuery1.append("$set", + new BasicDBObject().append("status", true)); + updateQuery1.append("$set", + new BasicDBObject().append("pos", "934")); + Lrequest.append("status",true); + dCollection.updateOne(searchQuery, updateQuery1); + dCollection.updateOne(searchQuery, updateQuery); + dCollection.updateOne(searchQuery,updateQuery); + delegationTimer.DeleteTargetRequest(ClientID); + } } - } + //above is finding one request and starting wheels