blob: 3df3207a2f8aa4db6681245d40e17fc5a22dfd7a [file] [log] [blame]
/**
* generated by Xtext 2.11.0
*/
package org.eclipse.osbp.xtext.authorizationdsl.validation;
import com.google.inject.Inject;
import org.eclipse.osbp.ui.api.useraccess.IUserAccessService;
import org.eclipse.osbp.xtext.authorizationdsl.AuthorizationDSLPackage;
import org.eclipse.osbp.xtext.authorizationdsl.Role;
import org.eclipse.osbp.xtext.authorizationdsl.RoleBlipProcess;
import org.eclipse.osbp.xtext.authorizationdsl.validation.AbstractAuthorizationDSLValidator;
import org.eclipse.osbp.xtext.basic.validation.IBasicValidatorDelegate;
import org.eclipse.xtend2.lib.StringConcatenation;
import org.eclipse.xtext.validation.Check;
/**
* This class contains custom validation rules.
*
* See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#validation
*/
@SuppressWarnings("all")
public class AuthorizationDSLValidator extends AbstractAuthorizationDSLValidator {
@Inject(optional = true)
private IBasicValidatorDelegate delegate;
@Check
public void checkSecurityLicensed(final Role role) {
boolean _equals = IUserAccessService.ADMINISTRATOR.equals(role.getName());
if (_equals) {
StringConcatenation _builder = new StringConcatenation();
_builder.append("The role \'");
_builder.append(IUserAccessService.ADMINISTRATOR);
_builder.append("\' is the already existing default role and its explicit definition is not allowed!");
this.error(_builder.toString(), role, null);
} else {
if (((this.delegate != null) && (!this.delegate.validateCommercial("authorization", "net.osbee.organization.permissions")))) {
StringConcatenation _builder_1 = new StringConcatenation();
_builder_1.append("Authorization is needed and not yet licensed. License Authorization at www.osbee.net");
this.info(_builder_1.toString(), role, null);
}
}
}
@Check
public void checkBPMLicensed(final RoleBlipProcess process) {
if (((this.delegate != null) && (!this.delegate.validateCommercial("authorization", "net.osbee.bpm")))) {
StringConcatenation _builder = new StringConcatenation();
_builder.append("BPM is needed and not yet licensed. License BPM at www.osbee.net");
this.info(_builder.toString(), process, AuthorizationDSLPackage.Literals.ROLE_BLIP_PROCESS__PROCESS);
}
}
}