Skip to content

Commit

Permalink
Add logging for Listeners and sync events
Browse files Browse the repository at this point in the history
  • Loading branch information
tiuweehan committed Nov 8, 2019
1 parent b82af38 commit 01d1017
Show file tree
Hide file tree
Showing 18 changed files with 152 additions and 13 deletions.
12 changes: 11 additions & 1 deletion src/main/java/seedu/algobase/ui/PlanCard.java
Original file line number Diff line number Diff line change
Expand Up @@ -95,12 +95,22 @@ public void handle(MouseEvent mouseEvent) {
if (mouseEvent.getButton().equals(MouseButton.PRIMARY)) {
if (mouseEvent.getClickCount() == 2) {
logger.info("Double Clicked on Problem card with name " + plan.getPlanName());
logger.info("Opening new plan tab");
logger.info(
"Creating new UiActionDetails with type " + UiActionType.OPEN_DETAILS_TAB
+ " with a ModelType of " + ModelType.PLAN
+ " with ID of " + plan.getId()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.OPEN_DETAILS_TAB,
ModelType.PLAN,
plan.getId()
));

logger.info(
"Creating new UiActionDetails with type " + UiActionType.SET_PLAN
+ " with ID of " + plan.getId()
);
uiActionExecutor.execute(new UiActionDetails(
UiActionType.SET_PLAN,
plan.getId()
Expand Down
7 changes: 7 additions & 0 deletions src/main/java/seedu/algobase/ui/ProblemCard.java
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,13 @@ public void handle(MouseEvent mouseEvent) {
if (mouseEvent.getButton().equals(MouseButton.PRIMARY)) {
if (mouseEvent.getClickCount() == 2) {
logger.info("Double Clicked on Problem card with name " + problem.getName());

logger.info(
"Creating new UiActionDetails with type " + UiActionType.OPEN_DETAILS_TAB
+ " with a ModelType of " + ModelType.PROBLEM
+ " with ID of " + problem.getId()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.OPEN_DETAILS_TAB,
ModelType.PROBLEM,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/
public class AlgoBaseUiActionParser {

private final Logger logger = LogsCenter.getLogger(AlgoBaseUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(AlgoBaseUiActionParser.class);

/**
* Parses user input into UI Action for execution.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ public class CloseDetailsTabUiActionParser implements UiParser<CloseDetailsTabUi
private static final int MODEL_TYPE_INDEX = 0;
private static final int ID_INDEX = 1;

private final Logger logger = LogsCenter.getLogger(CloseDetailsTabUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(CloseDetailsTabUiActionParser.class);

@Override
public CloseDetailsTabUiAction parse(UiActionDetails uiActionDetails) throws ParseException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public class DeletePlanUiActionParser implements UiParser<DeletePlanUiAction> {

private static final int ID_INDEX = 0;

private final Logger logger = LogsCenter.getLogger(DeletePlanUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(DeletePlanUiActionParser.class);

/**
* Parses the given {@code UiActionDetails} object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class DeleteProblemUiActionParser implements UiParser<DeleteProblemUiActi
private static final int ID_INDEX = 0;
private static final int IS_FORCED_INDEX = 1;

private final Logger logger = LogsCenter.getLogger(DeleteProblemUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(DeleteProblemUiActionParser.class);

/**
* Parses the given {@code UiActionDetails} object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class EditPlanUiActionParser implements UiParser<EditPlanUiAction> {
private static final int START_DATE_INDEX = 3;
private static final int END_DATE_INDEX = 4;

private final Logger logger = LogsCenter.getLogger(EditPlanUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(EditPlanUiActionParser.class);

/**
* Parses the given {@code UiActionDetails} object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public class EditProblemUiActionParser implements UiParser<EditProblemUiAction>
private static final int REMARK_INDEX = 6;
private static final int SOURCE_INDEX = 7;

private final Logger logger = LogsCenter.getLogger(EditProblemUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(EditProblemUiActionParser.class);

/**
* Parses the given {@code UiActionDetails} object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class OpenDetailsTabUiActionParser implements UiParser<OpenDetailsTabUiAc

private static final int MODEL_TYPE_INDEX = 0;
private static final int ID_INDEX = 1;
private final Logger logger = LogsCenter.getLogger(OpenDetailsTabUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(OpenDetailsTabUiActionParser.class);

@Override
public OpenDetailsTabUiAction parse(UiActionDetails uiActionDetails) throws ParseException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
public class SetPlanUiActionParser implements UiParser<SetPlanUiAction> {

private static final int ID_INDEX = 0;
private final Logger logger = LogsCenter.getLogger(SetPlanUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(SetPlanUiActionParser.class);

@Override
public SetPlanUiAction parse(UiActionDetails uiActionDetails) throws ParseException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
public class SwitchDetailsTabUiActionParser implements UiParser<SwitchDetailsTabUiAction> {

private static final int INDEX_INDEX = 0;
private final Logger logger = LogsCenter.getLogger(SwitchDetailsTabUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(SwitchDetailsTabUiActionParser.class);

@Override
public SwitchDetailsTabUiAction parse(UiActionDetails uiActionDetails) throws ParseException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
public class SwitchDisplayTabUiActionParser implements UiParser<SwitchDisplayTabUiAction> {

private static final int INDEX_INDEX = 0;
private final Logger logger = LogsCenter.getLogger(SwitchDisplayTabUiActionParser.class);
private static final Logger logger = LogsCenter.getLogger(SwitchDisplayTabUiActionParser.class);

@Override
public SwitchDisplayTabUiAction parse(UiActionDetails uiActionDetails) throws ParseException {
Expand Down
10 changes: 10 additions & 0 deletions src/main/java/seedu/algobase/ui/details/DetailsTab.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
package seedu.algobase.ui.details;

import java.util.logging.Logger;

import javafx.fxml.FXML;
import javafx.scene.control.Tab;
import javafx.scene.layout.Region;
import seedu.algobase.commons.core.LogsCenter;
import seedu.algobase.model.Id;
import seedu.algobase.model.ModelType;
import seedu.algobase.ui.UiPart;
Expand All @@ -16,6 +19,7 @@
public class DetailsTab extends UiPart<Region> {

private static final String FXML = "DetailsTab.fxml";
private static final Logger logger = LogsCenter.getLogger(DetailsTab.class);

private final Id modelId;
private final ModelType modelType;
Expand Down Expand Up @@ -54,6 +58,12 @@ public Tab getTab() {
*/
private void addOnCloseRequestListener(UiActionExecutor uiActionExecutor) {
tabContentPlaceholder.setOnCloseRequest(e -> {
logger.info(
"Creating new UiActionDetails with type " + UiActionType.CLOSE_DETAILS_TAB
+ " with model type of " + modelType.getTabName()
+ " with ID of " + modelId.getIdValue()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.CLOSE_DETAILS_TAB,
modelType,
Expand Down
25 changes: 25 additions & 0 deletions src/main/java/seedu/algobase/ui/details/DetailsTabPane.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
package seedu.algobase.ui.details;

import static seedu.algobase.commons.util.CollectionUtil.requireAllNonNull;

import java.util.List;
import java.util.Optional;
import java.util.logging.Logger;
import java.util.stream.Collectors;

import javafx.beans.value.ChangeListener;
Expand All @@ -11,6 +14,7 @@
import javafx.fxml.FXML;
import javafx.scene.control.TabPane;
import javafx.scene.layout.Region;
import seedu.algobase.commons.core.LogsCenter;
import seedu.algobase.commons.core.index.Index;
import seedu.algobase.commons.exceptions.IllegalValueException;
import seedu.algobase.logic.Logic;
Expand All @@ -33,6 +37,7 @@
public class DetailsTabPane extends UiPart<Region> {

private static final String FXML = "DetailsTabPane.fxml";
private static final Logger logger = LogsCenter.getLogger(DetailsTabPane.class);

private final ReadOnlyAlgoBase algoBase;
private final ReadOnlyTabManager readOnlyTabManager;
Expand All @@ -43,6 +48,8 @@ public class DetailsTabPane extends UiPart<Region> {

public DetailsTabPane(Logic logic, UiActionExecutor uiActionExecutor) {
super(FXML);
requireAllNonNull(logic, uiActionExecutor);

this.uiActionExecutor = uiActionExecutor;

tabsPlaceholder.setTabClosingPolicy(TabPane.TabClosingPolicy.SELECTED_TAB);
Expand Down Expand Up @@ -88,6 +95,10 @@ private void addTabToTabPane(DetailsTab detailsTab) {
*/
private void addListenerForIndexChange(ObservableIntegerValue detailsTabPaneIndex) {
detailsTabPaneIndex.addListener((observable, oldValue, newValue) -> {
logger.info(
"Selected Details Tab changed to index " + Index.fromZeroBased(newValue.intValue()).getOneBased()
);

selectTab((newValue.intValue()));
});
}
Expand All @@ -100,6 +111,16 @@ private void addListenerToTabPaneIndexChange() {
@Override
public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
if (newValue.intValue() >= 0) {
logger.info(
"Details Tab with index value of "
+ Index.fromZeroBased(newValue.intValue()).getOneBased()
+ " clicked"
);
logger.info(
"Creating new UiActionDetails with type " + UiActionType.SWITCH_DETAILS_TAB
+ " with index value of " + Index.fromZeroBased(newValue.intValue()).getOneBased()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.SWITCH_DETAILS_TAB,
Index.fromZeroBased(newValue.intValue())
Expand All @@ -116,6 +137,10 @@ private void addListenerForTabChanges() {
readOnlyTabManager.getTabsDataList().addListener(new ListChangeListener<TabData>() {
@Override
public void onChanged(Change<? extends TabData> change) {
logger.info(
"TabData List modified with a new size of " + change.getList().size()
);

clearTabs();
addTabsToTabPane(change.getList());
tabsPlaceholder.requestLayout();
Expand Down
34 changes: 34 additions & 0 deletions src/main/java/seedu/algobase/ui/details/PlanDetails.java
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
package seedu.algobase.ui.details;

import static seedu.algobase.commons.util.CollectionUtil.requireAllNonNull;

import java.util.logging.Logger;

import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.DatePicker;
import javafx.scene.control.TextArea;
import javafx.scene.control.TextField;
import javafx.scene.layout.Region;
import seedu.algobase.commons.core.LogsCenter;
import seedu.algobase.model.ModelType;
import seedu.algobase.model.plan.Plan;
import seedu.algobase.ui.UiPart;
Expand All @@ -19,6 +24,7 @@
public class PlanDetails extends UiPart<Region> {

private static final String FXML = "PlanDetails.fxml";
private static final Logger logger = LogsCenter.getLogger(PlanDetails.class);

private final Plan plan;

Expand All @@ -39,6 +45,8 @@ public class PlanDetails extends UiPart<Region> {

public PlanDetails(Plan plan, UiActionExecutor uiActionExecutor) {
super(FXML);
requireAllNonNull(plan, uiActionExecutor);

this.plan = plan;

editButton.setDisable(true);
Expand All @@ -64,6 +72,16 @@ public PlanDetails(Plan plan, UiActionExecutor uiActionExecutor) {
});

editButton.setOnMouseClicked((e) -> {
logger.info("Edit button clicked on Plan Details");
logger.info(
"Creating new UiActionDetails with type " + UiActionType.EDIT_PLAN
+ " with ID of " + plan.getId()
+ " with a plan name of " + planName.getText()
+ " with a plan description of " + planDescription.getText()
+ " with a start date of " + startDate.getValue().toString()
+ " with an end date of " + endDate.getValue().toString()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.EDIT_PLAN,
plan.getId(),
Expand All @@ -72,6 +90,8 @@ public PlanDetails(Plan plan, UiActionExecutor uiActionExecutor) {
startDate.getValue(),
endDate.getValue()
));

logger.info("Disabling the Edit button");
editButton.setDisable(true);
e.consume();
});
Expand All @@ -83,6 +103,7 @@ public PlanDetails(Plan plan, UiActionExecutor uiActionExecutor) {

// Close the warning dialog
if (warningDialog.isShowing()) {
logger.info("Closing the Warning Dialog");
warningDialog.hide();
}

Expand All @@ -91,13 +112,24 @@ public PlanDetails(Plan plan, UiActionExecutor uiActionExecutor) {
}

// Close the tab
logger.info(
"Creating new UiActionDetails with type " + UiActionType.CLOSE_DETAILS_TAB
+ " with model type of " + ModelType.PLAN
+ " with ID of " + plan.getId()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.CLOSE_DETAILS_TAB,
ModelType.PLAN,
plan.getId()
));

// Delete the plan
logger.info(
"Creating new UiActionDetails with type " + UiActionType.DELETE_PLAN
+ " with ID of " + plan.getId()
);

uiActionExecutor.execute(new UiActionDetails(
UiActionType.DELETE_PLAN,
plan.getId()
Expand All @@ -106,8 +138,10 @@ public PlanDetails(Plan plan, UiActionExecutor uiActionExecutor) {

deleteButton.setOnMouseClicked((e) -> {
if (!warningDialog.isShowing()) {
logger.info("Delete button clicked - showing warning dialog");
warningDialog.show();
} else {
logger.info("Delete button clicked - focusing on warning dialog");
warningDialog.focus();
}
e.consume();
Expand Down
Loading

0 comments on commit 01d1017

Please sign in to comment.