All Downloads are FREE. Search and download functionalities are using the official Maven repository.

fitnesse.wiki.fs.InMemoryPage Maven / Gradle / Ivy

There is a newer version: 20181217
Show newest version
// Copyright (C) 2003-2009 by Object Mentor, Inc. All rights reserved.
// Released under the terms of the CPL Common Public License version 1.0.
package fitnesse.wiki.fs;

import java.io.File;
import java.util.Properties;

import fitnesse.wiki.SystemVariableSource;
import fitnesse.wiki.WikiPage;
import fitnesse.wiki.WikiPageFactory;

// In memory page, used for testing and instant pages (like GitFileVersionController's RecentChanges page).
public class InMemoryPage {

  public static WikiPage makeRoot(String name) {
    return makeRoot(name, null, new MemoryFileSystem());
  }

  public static WikiPage makeRoot(String name, MemoryFileSystem fileSystem) {
    return makeRoot(name, null, fileSystem);
  }

  public static WikiPage makeRoot(String name, Properties properties) {
    return makeRoot(name, properties, new MemoryFileSystem());
  }

  public static WikiPage makeRoot(String name, Properties properties, MemoryFileSystem fileSystem) {
    WikiPageFactory factory = newInstance(fileSystem);
    return factory.makePage(new File("."), name, null, new SystemVariableSource(properties));
  }

  public static WikiPageFactory newInstance() {
    MemoryFileSystem fileSystem = new MemoryFileSystem();
    return newInstance(fileSystem);
  }

  public static WikiPageFactory newInstance(FileSystem fileSystem) {
    return new FileSystemPageFactory(fileSystem, new MemoryVersionsController(fileSystem));
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy