RESTConfigurationManager.java :  » REST » tabulasoftmed » org » softmed » rest » editor » Java Open Source

Java Open Source » REST » tabulasoftmed 
tabulasoftmed » org » softmed » rest » editor » RESTConfigurationManager.java
package org.softmed.rest.editor;

import java.util.List;

import org.softmed.filehandling.CodeUtil;
import org.softmed.rest.admin.file.FileManager;

import restlet.description.convert.RESTConfigurationDescription;
import restlet.description.convert.RESTConfigurationXMLConverter;
import restlet.description.convert.RESTModuleDescription;

public class RESTConfigurationManager {

  RESTConfigurationXMLConverter converter = new RESTConfigurationXMLConverter();
  FileManager fileManager;
  String configFilePath;
  RESTConfigurationDescription description;

  public RESTConfigurationDescription loadConfigurationFile(String path)
      throws Throwable {
    String xml = fileManager.readFile(path);
    description = (RESTConfigurationDescription) converter.fromXML(xml);
    return description;
  }

  public void loadModules(RESTConfigurationDescription description)
      throws Throwable {
    List<String> moduleSources = description.getModuleConfigurationFiles();
    for (String path : moduleSources) {
      description.addModule(loadModule(path));
    }
  }

  public RESTModuleDescription loadModule(String path) throws Throwable {
    String xml = fileManager.readFile(path);
    RESTModuleDescription module = (RESTModuleDescription) converter
        .fromXML(xml);
    module.setPath(path);
    return module;
  }

  public void saveConfigurationFile(RESTConfigurationDescription description, String path) throws Throwable {
    description.compile();
    String xml = converter.toXML(description);
    fileManager.saveToFile(path, xml);
    this.description = description;
  }

  public void saveModule(RESTModuleDescription description)
      throws Throwable {
    String xml = converter.toXML(description);
    fileManager.saveToFile(description.getPath(), xml);
  }

  public void removeModule(String path) {
    description.getModuleConfigurationFiles().remove(path);
    // description.get
  }

  public String loadHandler(String path) throws Throwable {
    return fileManager.readFile(path);
  }

  public void saveHandler(String path, String code) throws Throwable {
    fileManager.saveToFile(path, code);
  }

  public String getConfigFilePath() {
    return configFilePath;
  }

  public void setConfigFilePath(String configFilePath) {
    this.configFilePath = configFilePath;
  }

  public RESTConfigurationDescription getDescription() {
    return description;
  }

  public void setDescription(RESTConfigurationDescription description) {
    this.description = description;
  }

  public FileManager getFileManager() {
    return fileManager;
  }

  public void setFileManager(FileManager fileManager) {
    this.fileManager = fileManager;
  }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.