/*
* Copyright 2017 Red Hat, Inc. and/or its affiliates.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.kie.workbench.common.stunner.client.widgets.toolbar.command;
import javax.enterprise.context.Dependent;
import javax.inject.Inject;
import org.jboss.errai.ioc.client.api.ManagedInstance;
@Dependent
public class ToolbarCommandFactory {
private final ManagedInstance<ClearStatesToolbarCommand> clearStatesCommand;
private final ManagedInstance<VisitGraphToolbarCommand> visitGraphCommand;
private final ManagedInstance<SwitchGridToolbarCommand> switchGridCommand;
private final ManagedInstance<ClearToolbarCommand> clearCommand;
private final ManagedInstance<DeleteSelectionToolbarCommand> deleteSelectionCommand;
private final ManagedInstance<UndoToolbarCommand> undoCommand;
private final ManagedInstance<RedoToolbarCommand> redoCommand;
private final ManagedInstance<ValidateToolbarCommand> validateCommand;
private final ManagedInstance<RefreshToolbarCommand> refreshCommand;
protected ToolbarCommandFactory() {
this(null,
null,
null,
null,
null,
null,
null,
null,
null);
}
@Inject
public ToolbarCommandFactory(final ManagedInstance<ClearStatesToolbarCommand> clearStatesCommand,
final ManagedInstance<VisitGraphToolbarCommand> visitGraphCommand,
final ManagedInstance<SwitchGridToolbarCommand> switchGridCommand,
final ManagedInstance<ClearToolbarCommand> clearCommand,
final ManagedInstance<DeleteSelectionToolbarCommand> deleteSelectionCommand,
final ManagedInstance<UndoToolbarCommand> undoCommand,
final ManagedInstance<RedoToolbarCommand> redoCommand,
final ManagedInstance<ValidateToolbarCommand> validateCommand,
final ManagedInstance<RefreshToolbarCommand> refreshCommand) {
this.clearStatesCommand = clearStatesCommand;
this.visitGraphCommand = visitGraphCommand;
this.switchGridCommand = switchGridCommand;
this.clearCommand = clearCommand;
this.deleteSelectionCommand = deleteSelectionCommand;
this.undoCommand = undoCommand;
this.redoCommand = redoCommand;
this.validateCommand = validateCommand;
this.refreshCommand = refreshCommand;
}
public ClearStatesToolbarCommand newClearStatesCommand() {
return clearStatesCommand.get();
}
public SwitchGridToolbarCommand newSwitchGridCommand() {
return switchGridCommand.get();
}
public VisitGraphToolbarCommand newVisitGraphCommand() {
return visitGraphCommand.get();
}
public ClearToolbarCommand newClearCommand() {
return clearCommand.get();
}
public DeleteSelectionToolbarCommand newDeleteSelectedElementsCommand() {
return deleteSelectionCommand.get();
}
public UndoToolbarCommand newUndoCommand() {
return undoCommand.get();
}
public RedoToolbarCommand newRedoCommand() {
return redoCommand.get();
}
public ValidateToolbarCommand newValidateCommand() {
return validateCommand.get();
}
public RefreshToolbarCommand newRefreshCommand() {
return refreshCommand.get();
}
}