Added registration client/server
This commit is contained in:
parent
dd799f6d99
commit
546e341433
18 changed files with 817 additions and 418 deletions
816
.idea/workspace.xml
generated
816
.idea/workspace.xml
generated
File diff suppressed because it is too large
Load diff
|
|
@ -20,6 +20,6 @@ public class Main {
|
||||||
System.out.println("Font non caricato correttamente");
|
System.out.println("Font non caricato correttamente");
|
||||||
}
|
}
|
||||||
|
|
||||||
Entrypoint entrypoint = new Entrypoint();
|
App entrypoint = new App();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,9 @@ public class Palette {
|
||||||
public static Color registerLblBtn_onmouseover_color = new Color(95,0,0, 127);
|
public static Color registerLblBtn_onmouseover_color = new Color(95,0,0, 127);
|
||||||
public static Color registerLblBtn_onmouseclick_color = new Color(53,66,32);
|
public static Color registerLblBtn_onmouseclick_color = new Color(53,66,32);
|
||||||
public static Color scrollPanel_backgroundColor = new Color(220,229,207);
|
public static Color scrollPanel_backgroundColor = new Color(220,229,207);
|
||||||
|
public static Color dialog_alert = Color.red;
|
||||||
|
public static Color dialog_success = new Color(53,66,32);
|
||||||
|
|
||||||
|
|
||||||
public static Font button_font = new Font("DK Trained Monkey", Font.BOLD, 30);
|
public static Font button_font = new Font("DK Trained Monkey", Font.BOLD, 30);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,17 +8,23 @@ import java.awt.*;
|
||||||
/**
|
/**
|
||||||
* Created by loke on 13/06/2017.
|
* Created by loke on 13/06/2017.
|
||||||
*/
|
*/
|
||||||
public class Entrypoint extends JFrame {
|
public class App extends JFrame {
|
||||||
|
|
||||||
protected TTContainer root;
|
protected TTContainer root;
|
||||||
|
public static AuthService authService;
|
||||||
|
public static SessionService sessionService;
|
||||||
|
|
||||||
public Entrypoint(){
|
public App(){
|
||||||
setPreferredSize( new Dimension( 640, 480 ));
|
setPreferredSize( new Dimension( 640, 480 ));
|
||||||
setSize(new Dimension(640,480));
|
setSize(new Dimension(640,480));
|
||||||
setLocation(100,100);
|
setLocation(100,100);
|
||||||
setResizable( false );
|
setResizable( false );
|
||||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
//Init services
|
||||||
|
authService = new AuthService();
|
||||||
|
sessionService = new SessionService();
|
||||||
|
|
||||||
Home home = new Home(this);
|
Home home = new Home(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
package com.texttwist.client.pages;
|
package com.texttwist.client.pages;
|
||||||
|
|
||||||
import com.texttwist.client.constants.Config;
|
import com.texttwist.client.constants.Config;
|
||||||
import interfaces.ITTAuth;
|
import interfaces.ITTAuth;
|
||||||
import models.TTResponse;
|
import models.TTResponse;
|
||||||
|
|
@ -11,21 +12,25 @@ import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by loke on 15/06/2017.
|
* Created by loke on 17/06/2017.
|
||||||
*/
|
*/
|
||||||
public class HomeManager {
|
public class AuthService {
|
||||||
ExecutorService executor = Executors.newSingleThreadExecutor();
|
|
||||||
String baseUrl = Config.getRMIServerAddress().concat("/auth");
|
|
||||||
|
|
||||||
public HomeManager(){
|
protected String baseUrl = Config.getRMIServerAddress().concat("/auth");
|
||||||
|
|
||||||
|
public AuthService(){
|
||||||
}
|
}
|
||||||
|
|
||||||
public TTResponse login(String userName, String password) throws RemoteException, NotBoundException, MalformedURLException {
|
public TTResponse login(String userName, String password) throws RemoteException, NotBoundException, MalformedURLException {
|
||||||
System.out.print(password);
|
|
||||||
ITTAuth auth = (ITTAuth) Naming.lookup(baseUrl);
|
ITTAuth auth = (ITTAuth) Naming.lookup(baseUrl);
|
||||||
return auth.login(userName, password);
|
return auth.login(userName, password);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public TTResponse register(String userName, String password) throws RemoteException, NotBoundException, MalformedURLException {
|
||||||
|
ITTAuth auth = (ITTAuth) Naming.lookup(baseUrl);
|
||||||
|
return auth.register(userName, password);
|
||||||
|
}
|
||||||
|
|
||||||
public TTResponse logout(String userName, String token) throws RemoteException, NotBoundException, MalformedURLException {
|
public TTResponse logout(String userName, String token) throws RemoteException, NotBoundException, MalformedURLException {
|
||||||
ITTAuth auth = (ITTAuth) Naming.lookup(baseUrl);
|
ITTAuth auth = (ITTAuth) Naming.lookup(baseUrl);
|
||||||
return auth.logout(userName, token);
|
return auth.logout(userName, token);
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.texttwist.client.pages;
|
package com.texttwist.client.pages;
|
||||||
import com.texttwist.client.constants.Palette;
|
import com.texttwist.client.constants.Palette;
|
||||||
import com.texttwist.client.ui.*;
|
import com.texttwist.client.ui.*;
|
||||||
|
import com.texttwist.client.ui.TTDialog;
|
||||||
import models.TTResponse;
|
import models.TTResponse;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
|
@ -10,12 +11,12 @@ import java.util.concurrent.Callable;
|
||||||
public class Home extends Page {
|
public class Home extends Page {
|
||||||
|
|
||||||
private TTContainer loginDataContainer;
|
private TTContainer loginDataContainer;
|
||||||
private HomeManager homeManager;
|
private HomeController homeController;
|
||||||
private TTContainer logoContainer;
|
private TTContainer logoContainer;
|
||||||
|
|
||||||
public Home(JFrame window) {
|
public Home(JFrame window) {
|
||||||
super(window);
|
super(window);
|
||||||
homeManager = new HomeManager();
|
homeController = new HomeController();
|
||||||
createUIComponents();
|
createUIComponents();
|
||||||
window.setVisible(true);
|
window.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
@ -49,13 +50,18 @@ public class Home extends Page {
|
||||||
@Override
|
@Override
|
||||||
public Object call() throws Exception {
|
public Object call() throws Exception {
|
||||||
//TODO CHIAMA API PER LOGIN E SE TUTTO OKEY MANDA A PAGINA DEL MENU
|
//TODO CHIAMA API PER LOGIN E SE TUTTO OKEY MANDA A PAGINA DEL MENU
|
||||||
TTResponse res = homeManager.login(usernameField.getText(), String.valueOf(passwordField.getPassword()));
|
TTResponse res = homeController.login(usernameField.getText(), String.valueOf(passwordField.getPassword()));
|
||||||
if (res.code == 200){
|
if (res.code == 200){
|
||||||
//OK, go to next page and show popup
|
//OK, go to next page and show popup
|
||||||
return new Menu(window);
|
return new Menu(window);
|
||||||
} else {
|
} else {
|
||||||
JOptionPane.showMessageDialog(null, "Login Failes");
|
return new TTDialog("alert", res.message,
|
||||||
return null;
|
new Callable() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
return new Home(window);
|
||||||
|
}
|
||||||
|
},null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
||||||
28
Client/src/com/texttwist/client/pages/HomeController.java
Normal file
28
Client/src/com/texttwist/client/pages/HomeController.java
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
package com.texttwist.client.pages;
|
||||||
|
import com.texttwist.client.constants.Config;
|
||||||
|
import interfaces.ITTAuth;
|
||||||
|
import models.TTResponse;
|
||||||
|
|
||||||
|
import java.net.MalformedURLException;
|
||||||
|
import java.rmi.Naming;
|
||||||
|
import java.rmi.NotBoundException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
import java.util.concurrent.ExecutorService;
|
||||||
|
import java.util.concurrent.Executors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by loke on 15/06/2017.
|
||||||
|
*/
|
||||||
|
public class HomeController {
|
||||||
|
|
||||||
|
public HomeController(){
|
||||||
|
}
|
||||||
|
|
||||||
|
public TTResponse login(String userName, String password) throws RemoteException, NotBoundException, MalformedURLException {
|
||||||
|
TTResponse res = App.authService.login(userName,password);
|
||||||
|
if (res.code == 200){
|
||||||
|
App.sessionService.create(userName, password);
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -13,10 +13,12 @@ import java.util.concurrent.Callable;
|
||||||
public class Menu extends Page{
|
public class Menu extends Page{
|
||||||
|
|
||||||
private TTContainer menuBar;
|
private TTContainer menuBar;
|
||||||
|
private MenuController menuController;
|
||||||
|
|
||||||
public Menu(JFrame window) throws IOException {
|
public Menu(JFrame window) throws IOException {
|
||||||
super(window);
|
super(window);
|
||||||
createUIComponents();
|
createUIComponents();
|
||||||
|
menuController = new MenuController();
|
||||||
window.setVisible(true);
|
window.setVisible(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -24,27 +26,36 @@ public class Menu extends Page{
|
||||||
@Override
|
@Override
|
||||||
public void createUIComponents() throws IOException {
|
public void createUIComponents() throws IOException {
|
||||||
addLogo(root);
|
addLogo(root);
|
||||||
|
|
||||||
menuBar = new TTContainer(
|
menuBar = new TTContainer(
|
||||||
null,
|
null,
|
||||||
new Dimension(1150,220),
|
new Dimension(1150,280),
|
||||||
Palette.root_backgroundColor,
|
Palette.root_backgroundColor,
|
||||||
-1,
|
-1,
|
||||||
root);
|
root);
|
||||||
|
|
||||||
|
TTLabel playerToSendInvite_flavourText = new TTLabel(
|
||||||
|
new Point(25,15),
|
||||||
|
new Dimension(350,20),
|
||||||
|
"Welcome back, " + App.sessionService.account.userName + "!",
|
||||||
|
new Font(Palette.inputBox_font.getFontName(), Font.ITALIC, 24),
|
||||||
|
null,
|
||||||
|
menuBar);
|
||||||
|
|
||||||
TTButton newMatch = new TTButton(
|
TTButton newMatch = new TTButton(
|
||||||
new Point(25,30),
|
new Point(25,70),
|
||||||
new Dimension(250,75),
|
new Dimension(250,75),
|
||||||
"New Match!",
|
"New Match!",
|
||||||
new Callable<Object>() {
|
new Callable<Object>() {
|
||||||
@Override
|
@Override
|
||||||
public Object call() throws Exception {
|
public Object call() throws Exception {
|
||||||
|
|
||||||
//TODO CHIAMA API PER REGISTRAZIONE E SE TUTTO OKEY MANDA A PAGINA LOGIN
|
//TODO CHIAMA API PER REGISTRAZIONE E SE TUTTO OKEY MANDA A PAGINA LOGIN
|
||||||
return new MatchSetup(window);
|
return new MatchSetup(window);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
menuBar);
|
menuBar);
|
||||||
TTButton matchRequests = new TTButton(
|
TTButton matchRequests = new TTButton(
|
||||||
new Point(290,30),
|
new Point(290,70),
|
||||||
new Dimension(250,75),
|
new Dimension(250,75),
|
||||||
"In pending",
|
"In pending",
|
||||||
new Callable<Object>() {
|
new Callable<Object>() {
|
||||||
|
|
@ -56,13 +67,13 @@ public class Menu extends Page{
|
||||||
},
|
},
|
||||||
menuBar);
|
menuBar);
|
||||||
TTCircleCounter circleCounter = new TTCircleCounter(
|
TTCircleCounter circleCounter = new TTCircleCounter(
|
||||||
new Point(290,30),
|
new Point(290,70),
|
||||||
new Dimension(25,25),
|
new Dimension(25,25),
|
||||||
menuBar.getGraphics(),
|
menuBar.getGraphics(),
|
||||||
menuBar);
|
menuBar);
|
||||||
|
|
||||||
TTButton highscores = new TTButton(
|
TTButton highscores = new TTButton(
|
||||||
new Point(25, 115),
|
new Point(25, 155),
|
||||||
new Dimension(250, 75),
|
new Dimension(250, 75),
|
||||||
"Highscores",
|
"Highscores",
|
||||||
new Callable<Object>() {
|
new Callable<Object>() {
|
||||||
|
|
@ -74,25 +85,17 @@ public class Menu extends Page{
|
||||||
menuBar);
|
menuBar);
|
||||||
|
|
||||||
TTButton logout = new TTButton(
|
TTButton logout = new TTButton(
|
||||||
new Point(290, 115),
|
new Point(290, 155),
|
||||||
new Dimension(250, 75),
|
new Dimension(250, 75),
|
||||||
"Logout",
|
"Logout",
|
||||||
new Callable<Object>() {
|
new Callable<Object>() {
|
||||||
@Override
|
@Override
|
||||||
public Object call() throws Exception {
|
public Object call() throws Exception {
|
||||||
|
menuController.logout("","");
|
||||||
return new Home(Page.window);
|
return new Home(Page.window);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
menuBar);
|
menuBar);
|
||||||
|
|
||||||
addFooter(root);
|
|
||||||
addBack(footer,
|
|
||||||
new Callable<Object>() {
|
|
||||||
@Override
|
|
||||||
public Object call() throws Exception {
|
|
||||||
return new Home(Page.window);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
27
Client/src/com/texttwist/client/pages/MenuController.java
Normal file
27
Client/src/com/texttwist/client/pages/MenuController.java
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
package com.texttwist.client.pages;
|
||||||
|
|
||||||
|
import com.texttwist.client.constants.Config;
|
||||||
|
import interfaces.ITTAuth;
|
||||||
|
import models.TTResponse;
|
||||||
|
|
||||||
|
import java.net.MalformedURLException;
|
||||||
|
import java.rmi.Naming;
|
||||||
|
import java.rmi.NotBoundException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by loke on 17/06/2017.
|
||||||
|
*/
|
||||||
|
public class MenuController {
|
||||||
|
|
||||||
|
public MenuController(){
|
||||||
|
}
|
||||||
|
|
||||||
|
public TTResponse logout(String userName, String token) throws RemoteException, NotBoundException, MalformedURLException {
|
||||||
|
TTResponse res = App.authService.logout(userName,token);
|
||||||
|
if (res.code == 200){
|
||||||
|
App.sessionService.remove();
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -2,6 +2,7 @@ package com.texttwist.client.pages;
|
||||||
|
|
||||||
import com.texttwist.client.constants.Palette;
|
import com.texttwist.client.constants.Palette;
|
||||||
import com.texttwist.client.ui.*;
|
import com.texttwist.client.ui.*;
|
||||||
|
import models.TTResponse;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
|
|
@ -13,9 +14,11 @@ import java.util.concurrent.Callable;
|
||||||
public class Register extends Page {
|
public class Register extends Page {
|
||||||
|
|
||||||
private TTContainer registerDataContainer;
|
private TTContainer registerDataContainer;
|
||||||
|
private RegisterController registerController;
|
||||||
public Register(JFrame window) {
|
public Register(JFrame window) {
|
||||||
super(window);
|
super(window);
|
||||||
createUIComponents();
|
createUIComponents();
|
||||||
|
registerController = new RegisterController();
|
||||||
window.setVisible(true);
|
window.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -51,9 +54,25 @@ public class Register extends Page {
|
||||||
new Callable<Object>() {
|
new Callable<Object>() {
|
||||||
@Override
|
@Override
|
||||||
public Object call() throws Exception {
|
public Object call() throws Exception {
|
||||||
|
//TODO CHIAMA API PER LOGIN E SE TUTTO OKEY MANDA A PAGINA DEL MENU
|
||||||
//TODO CHIAMA API PER REGISTRAZIONE E SE TUTTO OKEY MANDA A PAGINA LOGIN
|
TTResponse res = registerController.register(usernameField.getText(), String.valueOf(passwordField.getPassword()));
|
||||||
return new Home(window);
|
if (res.code == 200){
|
||||||
|
return new TTDialog("success", res.message,
|
||||||
|
new Callable() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
return new Home(window);
|
||||||
|
}
|
||||||
|
},null);
|
||||||
|
} else {
|
||||||
|
return new TTDialog("alert", res.message,
|
||||||
|
new Callable() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
},null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
registerDataContainer);
|
registerDataContainer);
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package com.texttwist.client.pages;
|
||||||
|
|
||||||
|
import com.texttwist.client.constants.Config;
|
||||||
|
import interfaces.ITTAuth;
|
||||||
|
import models.TTResponse;
|
||||||
|
|
||||||
|
import java.net.MalformedURLException;
|
||||||
|
import java.rmi.Naming;
|
||||||
|
import java.rmi.NotBoundException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by loke on 17/06/2017.
|
||||||
|
*/
|
||||||
|
public class RegisterController {
|
||||||
|
|
||||||
|
public RegisterController(){
|
||||||
|
}
|
||||||
|
|
||||||
|
public TTResponse register(String userName, String password) throws RemoteException, NotBoundException, MalformedURLException {
|
||||||
|
return App.authService.register(userName,password);
|
||||||
|
}
|
||||||
|
}
|
||||||
28
Client/src/com/texttwist/client/pages/SessionService.java
Normal file
28
Client/src/com/texttwist/client/pages/SessionService.java
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
package com.texttwist.client.pages;
|
||||||
|
|
||||||
|
import interfaces.ITTAuth;
|
||||||
|
import models.TTAccount;
|
||||||
|
import models.TTResponse;
|
||||||
|
|
||||||
|
import java.net.MalformedURLException;
|
||||||
|
import java.rmi.Naming;
|
||||||
|
import java.rmi.NotBoundException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by loke on 17/06/2017.
|
||||||
|
*/
|
||||||
|
public class SessionService {
|
||||||
|
|
||||||
|
protected TTAccount account;
|
||||||
|
|
||||||
|
public SessionService(){}
|
||||||
|
|
||||||
|
public void create(String userName, String token) {
|
||||||
|
account = new TTAccount(userName, token);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void remove(){
|
||||||
|
account = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -7,6 +7,7 @@ import javax.swing.*;
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.event.MouseAdapter;
|
import java.awt.event.MouseAdapter;
|
||||||
import java.awt.event.MouseEvent;
|
import java.awt.event.MouseEvent;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.concurrent.Callable;
|
import java.util.concurrent.Callable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
142
Client/src/com/texttwist/client/ui/TTDialog.java
Normal file
142
Client/src/com/texttwist/client/ui/TTDialog.java
Normal file
|
|
@ -0,0 +1,142 @@
|
||||||
|
package com.texttwist.client.ui;
|
||||||
|
|
||||||
|
import com.texttwist.client.constants.Palette;
|
||||||
|
import com.texttwist.client.pages.Home;
|
||||||
|
import com.texttwist.client.ui.TTContainer;
|
||||||
|
import com.texttwist.client.ui.TTLabel;
|
||||||
|
|
||||||
|
import javax.swing.*;
|
||||||
|
import javax.swing.border.EmptyBorder;
|
||||||
|
import java.awt.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.concurrent.Callable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by loke on 17/06/2017.
|
||||||
|
*/
|
||||||
|
public class TTDialog extends JFrame {
|
||||||
|
|
||||||
|
TTContainer root;
|
||||||
|
public TTDialog(String type, String message, Callable okHandler, Callable cancelHandler) {
|
||||||
|
setPreferredSize( new Dimension( 450, 200 ));
|
||||||
|
setSize(new Dimension(450,200));
|
||||||
|
setLocation(200,300);
|
||||||
|
setResizable(false);
|
||||||
|
setAlwaysOnTop(true);
|
||||||
|
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
setUndecorated(true);
|
||||||
|
setContentPane(new ShadowPane());
|
||||||
|
|
||||||
|
root = new TTContainer(
|
||||||
|
new Point(40,20),
|
||||||
|
new Dimension(0,0),
|
||||||
|
Palette.root_backgroundColor,
|
||||||
|
-1,
|
||||||
|
null);
|
||||||
|
switch (type){
|
||||||
|
case "alert":{
|
||||||
|
root.setBorder(BorderFactory.createLineBorder(Palette.dialog_alert));
|
||||||
|
|
||||||
|
}
|
||||||
|
case "success": {
|
||||||
|
root.setBorder(BorderFactory.createLineBorder(Palette.dialog_success));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
add(root);
|
||||||
|
|
||||||
|
TTLabel msg = new TTLabel(
|
||||||
|
new Point(60,20),
|
||||||
|
new Dimension(350,50),
|
||||||
|
message,
|
||||||
|
new Font(Palette.inputBox_font.getFontName(), Font.ITALIC, 38),
|
||||||
|
null,
|
||||||
|
root);
|
||||||
|
|
||||||
|
if(okHandler != null && cancelHandler != null){
|
||||||
|
TTButton okBtn = new TTButton(
|
||||||
|
new Point(60,100),
|
||||||
|
new Dimension(150,50),
|
||||||
|
"Ok",
|
||||||
|
new Callable<Object>() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
okHandler.call();
|
||||||
|
dispose();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
root);
|
||||||
|
TTButton cancelBtn = new TTButton(
|
||||||
|
new Point(250,100),
|
||||||
|
new Dimension(150,50),
|
||||||
|
"Cancel",
|
||||||
|
new Callable<Object>() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
cancelHandler.call();
|
||||||
|
dispose();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
root);
|
||||||
|
} else {
|
||||||
|
if(cancelHandler != null) {
|
||||||
|
TTButton cancelBtn = new TTButton(
|
||||||
|
new Point(150, 100),
|
||||||
|
new Dimension(150, 50),
|
||||||
|
"Cancel",
|
||||||
|
new Callable<Object>() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
cancelHandler.call();
|
||||||
|
dispose();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
root);
|
||||||
|
}
|
||||||
|
if(okHandler != null) {
|
||||||
|
TTButton okBtn = new TTButton(
|
||||||
|
new Point(150,100),
|
||||||
|
new Dimension(150,50),
|
||||||
|
"Ok",
|
||||||
|
new Callable<Object>() {
|
||||||
|
@Override
|
||||||
|
public Object call() throws Exception {
|
||||||
|
okHandler.call();
|
||||||
|
dispose();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
root);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
setVisible(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ShadowPane extends JPanel {
|
||||||
|
|
||||||
|
public ShadowPane() {
|
||||||
|
setLayout(new BorderLayout());
|
||||||
|
setOpaque(false);
|
||||||
|
setBackground(Color.BLACK);
|
||||||
|
setBorder(new EmptyBorder(0, 0, 5, 5));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Dimension getPreferredSize() {
|
||||||
|
return new Dimension(200, 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void paintComponent(Graphics g) {
|
||||||
|
super.paintComponent(g);
|
||||||
|
Graphics2D g2d = (Graphics2D) g.create();
|
||||||
|
g2d.setComposite(AlphaComposite.SrcOver.derive(0.5f));
|
||||||
|
g2d.fillRect(5, 5, getWidth(), getHeight());
|
||||||
|
g2d.dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,8 +1,6 @@
|
||||||
package com.texttwist.client.ui;
|
package com.texttwist.client.ui;
|
||||||
|
|
||||||
import com.texttwist.client.constants.Palette;
|
import com.texttwist.client.constants.Palette;
|
||||||
import com.texttwist.client.pages.Entrypoint;
|
|
||||||
import com.texttwist.client.pages.Page;
|
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
|
|
|
||||||
|
|
@ -9,5 +9,7 @@ import java.rmi.RemoteException;
|
||||||
*/
|
*/
|
||||||
public interface ITTAuth extends Remote {
|
public interface ITTAuth extends Remote {
|
||||||
TTResponse login(String userName, String password) throws RemoteException;
|
TTResponse login(String userName, String password) throws RemoteException;
|
||||||
|
TTResponse register(String userName, String password) throws RemoteException;
|
||||||
TTResponse logout(String userName, String token) throws RemoteException;
|
TTResponse logout(String userName, String token) throws RemoteException;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
14
Commons/src/models/TTAccount.java
Normal file
14
Commons/src/models/TTAccount.java
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
package models;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by loke on 17/06/2017.
|
||||||
|
*/
|
||||||
|
public class TTAccount {
|
||||||
|
public String userName;
|
||||||
|
public String token;
|
||||||
|
|
||||||
|
public TTAccount(String userName, String token){
|
||||||
|
this.userName = userName;
|
||||||
|
this.token = token;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -16,37 +16,59 @@ public class TTAuth extends UnicastRemoteObject implements ITTAuth {
|
||||||
|
|
||||||
private SecureRandom random = new SecureRandom();
|
private SecureRandom random = new SecureRandom();
|
||||||
|
|
||||||
public String nextSessionId() {
|
|
||||||
return new BigInteger(130, random).toString(32);
|
|
||||||
}
|
|
||||||
public TTAuth() throws RemoteException{
|
public TTAuth() throws RemoteException{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TTResponse register(String userName, String password) throws RemoteException {
|
||||||
|
TTLogger.write("LOGGER: Invoked register with username=" + userName + " AND " + " password=" + password);
|
||||||
|
if ((userName != null && !userName.isEmpty()) && (password != null && !password.equals(""))) {
|
||||||
|
boolean res = true;//TODO Inserisci nel db e verifica se c'è un utente con lo stesso nome
|
||||||
|
|
||||||
|
if(userName.equals("ciro")){ //TODO rimuovere
|
||||||
|
res = false;
|
||||||
|
}
|
||||||
|
if(res) {
|
||||||
|
TTLogger.write("LOGGER: Registration successfull");
|
||||||
|
return new TTResponse("Registration successfull", 200, null);
|
||||||
|
} else {
|
||||||
|
TTLogger.write("LOGGER: Registration unsuccessfull");
|
||||||
|
return new TTResponse("Registration unsuccessfull: Username exist!", 400, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return new TTResponse("Registration unsuccessfull! All fields are mandatories", 400, null);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TTResponse login(String userName, String password) throws RemoteException {
|
public TTResponse login(String userName, String password) throws RemoteException {
|
||||||
TTLogger.write("LOGGER: Invoked login with username=" + userName + " AND " + " password=" + password);
|
TTLogger.write("LOGGER: Invoked login with username=" + userName + " AND " + " password=" + password);
|
||||||
if ((userName != null && !userName.isEmpty())
|
if ((userName != null && !userName.isEmpty()) && (password != null && !password.equals(""))) {
|
||||||
&& (password != null && !password.equals(""))) {
|
|
||||||
|
|
||||||
if((userName.equalsIgnoreCase("admin"))
|
if((userName.equalsIgnoreCase("admin"))
|
||||||
&& (password.equals("admin"))) {
|
&& (password.equals("admin"))) {
|
||||||
JsonObject data = new JsonObject();
|
JsonObject data = new JsonObject();
|
||||||
data.put("token", nextSessionId());
|
data.put("token", nextSessionId());
|
||||||
System.out.println("LOGGER: Login successfull");
|
TTLogger.write("LOGGER: Login successfull");
|
||||||
return new TTResponse("Login successfull", 200, data);
|
return new TTResponse("Login successfull", 200, data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
System.out.println("LOGGER: Login unsuccessfull");
|
|
||||||
return new TTResponse("Login unsuccessfull", 400, null);
|
return new TTResponse("Login unsuccessfull", 400, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TTResponse logout(String userName, String token) throws RemoteException {
|
public TTResponse logout(String userName, String token) throws RemoteException {
|
||||||
System.out.println("LOGGER: Invoked logout with username=" + userName + " AND " + " token=" + token);
|
TTLogger.write("LOGGER: Invoked logout with username=" + userName + " AND " + " token=" + token);
|
||||||
if ((userName != null && !userName.isEmpty())
|
if ((userName != null && !userName.isEmpty()) && (token != null && !token.isEmpty())) {
|
||||||
&& (token != null && !token.isEmpty())) {
|
|
||||||
return new TTResponse("Logout successfull", 200, null);
|
return new TTResponse("Logout successfull", 200, null);
|
||||||
}
|
}
|
||||||
return new TTResponse("Logout successfull (but something go wrong)", 200, null);
|
return new TTResponse("Logout successfull (but something gone wrong)", 200, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String nextSessionId() {
|
||||||
|
return new BigInteger(130, random).toString(32);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue