ProjectHandler, SessionHandler and SSDPHandler is now singletons
This commit is contained in:
parent
825eb124cb
commit
ecda338715
9 changed files with 116 additions and 66 deletions
|
|
@ -14,6 +14,8 @@ import org.controlsfx.property.editor.PropertyEditor;
|
|||
import zutil.log.LogUtil;
|
||||
|
||||
import com.coder.client.CoderClient;
|
||||
import com.coder.client.ProjectHandler;
|
||||
import com.coder.client.SessionHandler;
|
||||
import com.coder.client.gui.GuiWindow;
|
||||
import com.coder.client.project.OpenProjectEventHandler;
|
||||
import com.coder.client.property.CoderClientProperty;
|
||||
|
|
@ -42,6 +44,9 @@ import javafx.util.Callback;
|
|||
public class EditorWindow extends GuiWindow {
|
||||
public static final Logger logger = LogUtil.getLogger();
|
||||
private CoderClient client;
|
||||
|
||||
private SessionHandler sessionHandler;
|
||||
private ProjectHandler projectHandler;
|
||||
|
||||
@FXML private TreeView<FileTreeItem> fileTreeView;
|
||||
@FXML private TextArea editTextArea;
|
||||
|
|
@ -57,17 +62,20 @@ public class EditorWindow extends GuiWindow {
|
|||
super(EditorWindow.class.getResource("EditorWindow.fxml"));
|
||||
this.client = client;
|
||||
|
||||
client.getSessionHandler().addMessageListener(new ProjectRspMsgListener() {
|
||||
this.sessionHandler = SessionHandler.getInstance();
|
||||
this.projectHandler = ProjectHandler.getInstance();
|
||||
|
||||
sessionHandler.addMessageListener(new ProjectRspMsgListener() {
|
||||
@Override
|
||||
public void messageReceived(final ProjectRspMsg msg) {
|
||||
try{
|
||||
logger.fine("a ProjectRspMsg received");
|
||||
if(msg.error != null){
|
||||
logger.severe("Server responded on the project request with the following error message: " + msg.error);
|
||||
client.getProjectHandler().setProject(null);
|
||||
projectHandler.setProject(null);
|
||||
return;
|
||||
}else{
|
||||
client.getProjectHandler().setProject(msg.name);
|
||||
projectHandler.setProject(msg.name);
|
||||
}
|
||||
|
||||
logger.info("loading project \""+msg.name+"\"");
|
||||
|
|
@ -148,14 +156,14 @@ public class EditorWindow extends GuiWindow {
|
|||
}
|
||||
}catch(Exception e){
|
||||
logger.log(Level.SEVERE, "exception while load the project", e);
|
||||
client.getProjectHandler().triggerOpenProjectFailureEvent("ERROR: failed to loading project");
|
||||
projectHandler.triggerOpenProjectFailureEvent("ERROR: failed to loading project");
|
||||
}
|
||||
|
||||
client.showOnStage(EditorWindow.this);
|
||||
}
|
||||
});
|
||||
|
||||
client.getSessionHandler().addMessageListener(new ProjectTypeRspMsgListener() {
|
||||
sessionHandler.addMessageListener(new ProjectTypeRspMsgListener() {
|
||||
@Override
|
||||
public void messageReceived(ProjectTypeRspMsg msg) {
|
||||
for(String type : msg.keySet()){
|
||||
|
|
@ -166,7 +174,7 @@ public class EditorWindow extends GuiWindow {
|
|||
}
|
||||
});
|
||||
|
||||
client.getSessionHandler().addMessageListener(new FileRspMsgListener(){
|
||||
sessionHandler.addMessageListener(new FileRspMsgListener(){
|
||||
@Override
|
||||
public void messageReceived(FileRspMsg msg) {
|
||||
if(msg.error != null || msg.path == null){
|
||||
|
|
@ -188,13 +196,13 @@ public class EditorWindow extends GuiWindow {
|
|||
}
|
||||
});
|
||||
|
||||
client.getProjectHandler().addprojectEventHandler(new OpenProjectEventHandler() {
|
||||
projectHandler.addprojectEventHandler(new OpenProjectEventHandler() {
|
||||
@Override
|
||||
public void openProject(String projectName) {
|
||||
CoderMessage msg = new CoderMessage();
|
||||
msg.ProjectReq = new ProjectReqMsg();
|
||||
msg.ProjectReq.name = projectName;
|
||||
client.getSessionHandler().sendMessage(msg);
|
||||
sessionHandler.sendMessage(msg);
|
||||
}
|
||||
});
|
||||
|
||||
|
|
@ -224,8 +232,8 @@ public class EditorWindow extends GuiWindow {
|
|||
|
||||
@FXML
|
||||
protected void changeProject(ActionEvent event){
|
||||
client.getProjectHandler().setProject(null);
|
||||
client.getProjectHandler().triggerSelectProjectEvent();
|
||||
projectHandler.setProject(null);
|
||||
projectHandler.triggerSelectProjectEvent();
|
||||
}
|
||||
|
||||
@FXML
|
||||
|
|
@ -237,7 +245,7 @@ public class EditorWindow extends GuiWindow {
|
|||
CoderMessage msg = new CoderMessage();
|
||||
msg.ProjectTypeReq = new ProjectTypeReqMsg();
|
||||
msg.ProjectTypeReq.type = type;
|
||||
client.getSessionHandler().sendMessage(msg);
|
||||
sessionHandler.sendMessage(msg);
|
||||
}
|
||||
|
||||
private void setupFileTreeView(){
|
||||
|
|
@ -257,7 +265,7 @@ public class EditorWindow extends GuiWindow {
|
|||
CoderMessage msg = new CoderMessage();
|
||||
msg.FileReq = new FileReqMsg();
|
||||
msg.FileReq.path = file.getFullPath();
|
||||
client.getSessionHandler().sendMessage(msg);
|
||||
sessionHandler.sendMessage(msg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue