Package org.bladerunnerjs.yaml

Source Code of org.bladerunnerjs.yaml.YamlBladerunnerConf

package org.bladerunnerjs.yaml;

import java.nio.charset.Charset;

import javax.validation.constraints.*;

import org.apache.bval.constraints.NotEmpty;
import org.bladerunnerjs.model.BRJSNode;
import org.bladerunnerjs.model.exception.ConfigException;
import org.bladerunnerjs.utility.ConfigValidationChecker;


public class YamlBladerunnerConf extends AbstractYamlConfFile {
 
  @Min(value=1)
  @Max(value=65535)
  public int jettyPort;
 
  @NotNull
  @NotEmpty
  public String defaultFileCharacterEncoding;

  @NotNull
  @NotEmpty
  public String loginRealm;

  @NotNull
  @NotEmpty
  public final String LOGIN_MODULE_NAME = "BladeRunnerLoginModule";
 
  @NotNull
  public String ignoredPaths;
 
  @NotNull
  public boolean useNodeCommands;
 
  @Override
  public void initialize(BRJSNode node) {
    jettyPort = getDefault(jettyPort, 7070);
    defaultFileCharacterEncoding = getDefault(defaultFileCharacterEncoding, "UTF-8");
    loginRealm = getDefault(loginRealm, "BladeRunnerLoginRealm");
    ignoredPaths = getDefault(ignoredPaths, ".svn, .git");
    useNodeCommands = getDefault(useNodeCommands, false);
  }
 
  @Override
  public void verify() throws ConfigException {
    ConfigValidationChecker.validate(this);
    verifyCharacterEncodings();
  }
 
  private void verifyCharacterEncodings() throws ConfigException {
    verifyCharacterEncoding("defaultFileCharacterEncoding", defaultFileCharacterEncoding);
  }
 
  private void verifyCharacterEncoding(String propertyName, String characterEncoding) throws ConfigException {
    if(!Charset.isSupported(characterEncoding)) {
      throw new ConfigException("the '" + propertyName + "' in '" + getUnderlyingFile().getPath() + "' is specified as '" +
        characterEncoding + "' which is not a valid character encoding");
    }
  }
}
TOP

Related Classes of org.bladerunnerjs.yaml.YamlBladerunnerConf

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.