class NewTemplatePresenter implements WizardPage {

    @Override
    public void isComplete(final Callback<Boolean> callback) {
        if (isValid()) {
            specManagementService.call(new RemoteCallback<Boolean>() {
                @Override
                public void callback(final Boolean result) {
                    if (result.equals(Boolean.FALSE)) {
                        view.errorOnTemplateName(view.getInvalidErrorMessage());
                        callback.callback(false);
                    } else {
                        callback.callback(true);
                    }
                }
            }).isNewServerTemplateIdValid(view.getTemplateName());
        } else {
            callback.callback(false);
        }
    }

    @Inject public  NewTemplatePresenter(final View view,
                                final Caller<SpecManagementService> specManagementService,
                                final Event<WizardPageStatusChangeEvent> wizardPageStatusChangeEvent);

}