blob: 97f96d903a6e1a0e3bbb8df59b6446c91f8e4923 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2014 Bosch Software Innovations GmbH and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* and Eclipse Distribution License v1.0 which accompany this distribution.
*
* The Eclipse Public License is available at
* http://www.eclipse.org/legal/epl-v10.html
* The Eclipse Distribution License is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* Contributors:
* Bosch Software Innovations GmbH - Please refer to git log
*
*******************************************************************************/
package org.eclipse.vorto.fbeditor.internal.validation
import org.eclipse.vorto.fbeditor.internal.validation.validator.ConstraintValueValidator
import org.eclipse.vorto.fbeditor.internal.validation.validator.impl.AccordinglyValueValidator
import org.eclipse.vorto.fbeditor.internal.validation.validator.impl.RegexValueValidator
import org.eclipse.vorto.fbeditor.internal.validation.validator.impl.ScalarValueValidator
import org.eclipse.vorto.functionblock.ConstraintIntervalType
class ConstraintValidatorFactory {
def static ConstraintValueValidator getValueValidator(ConstraintIntervalType type){
var typeStr = type.literal.toString
switch typeStr{
case 'MAX' :
new AccordinglyValueValidator
case 'MIN' :
new AccordinglyValueValidator
case 'REGEX' :
new RegexValueValidator
case 'STRLEN' :
new ScalarValueValidator
default:
throw new IllegalArgumentException('Not supported constraint type')
}
}
}