Package net.sourceforge.pebble.domain

Examples of net.sourceforge.pebble.domain.FileMetaData


    View view = action.process(request, response);

    // check file information available and the right view is returned
    assertEquals(FileMetaData.BLOG_FILE, action.getModel().get("type"));
    FileMetaData fileMetaData = (FileMetaData)action.getModel().get("directory");
    assertEquals("/", fileMetaData.getAbsolutePath());
    assertTrue(fileMetaData.isDirectory());
    assertEquals("uploadFileToBlog.secureaction", action.getModel().get("uploadAction"));
    assertTrue(view instanceof FilesView);

    List files = (List)action.getModel().get("files");
    assertEquals(4, files.size());

    // the files should be in this order
    // - a, z, b.txt, y.txt (directories followed by files, both alphabetically)
    FileMetaData file = (FileMetaData)files.get(0);
    assertEquals("a", file.getName());
    assertEquals("/", file.getPath());
    assertTrue(file.isDirectory());
    file = (FileMetaData)files.get(1);
    assertEquals("z", file.getName());
    assertEquals("/", file.getPath());
    assertTrue(file.isDirectory());
    file = (FileMetaData)files.get(2);
    assertEquals("b.txt", file.getName());
    assertEquals("/", file.getPath());
    assertFalse(file.isDirectory());
    file = (FileMetaData)files.get(3);
    assertEquals("y.txt", file.getName());
    assertEquals("/", file.getPath());
    assertFalse(file.isDirectory());

    // and clean up
    fileManager.deleteFile("/", "a");
    fileManager.deleteFile("/", "z");
    fileManager.deleteFile("/", "y.txt");
View Full Code Here


    request.setParameter("type", FileMetaData.BLOG_FILE);
    action.process(request, response);
    List files = (List)action.getModel().get("files");
    assertEquals(1, files.size());
    FileMetaData file = (FileMetaData)files.get(0);
    assertEquals("a.txt", file.getName());
    assertEquals("/", file.getPath());
    assertFalse(file.isDirectory());

    // and the same test with a blank path
    request.setParameter("path", "");
    action.process(request, response);
    files = (List)action.getModel().get("files");
    assertEquals(1, files.size());
    file = (FileMetaData)files.get(0);
    assertEquals("a.txt", file.getName());
    assertEquals("/", file.getPath());
    assertFalse(file.isDirectory());

    // and clean up
    fileManager.deleteFile("/", "a.txt");
  }
View Full Code Here

  public void testSelectFile() throws Exception {
    request.setParameter("path", "/");
    request.setParameter("type", FileMetaData.BLOG_IMAGE);
    request.setParameter("file", "afile.txt");
    action.process(request, response);
    FileMetaData fileMetaData = (FileMetaData)action.getModel().get("file");
    assertEquals("afile.txt", fileMetaData.getName());
    assertFalse(fileMetaData.isDirectory());
  }
View Full Code Here

    log.debug("Saving to " + name);
    try {
      byte bytes[] = (byte[])struct.get(BITS);
      long itemSize = bytes.length/1024; // number of bytes / 1024
      if (FileManager.hasEnoughSpace(blog, itemSize)) {
        FileMetaData file = manager.saveFile(name, bytes);
        ht.put(URL, file.getUrl());
      } else {
        throw new XmlRpcException(0, "You do not have enough free space - please free some space by removing unused files or asking your system administrator to increase your quota from " + PebbleContext.getInstance().getConfiguration().getFileUploadQuota() + " KB.");
      }
    } catch (IOException e) {
      e.printStackTrace();
View Full Code Here

      blog.info("Files uploaded.");
    } catch (Exception e) {
      throw new ServletException(e);
    }

    FileMetaData directory = fileManager.getFileMetaData(path);

    return new RedirectView(blog.getUrl() + directory.getUrl());
  }
View Full Code Here

public class FileMetaDataComparatorTest extends SingleBlogTestCase {

  public void testCompare() {
    FileMetaDataComparator comp = new FileMetaDataComparator();
    FileManager fileManager = new FileManager(blog, FileMetaData.BLOG_FILE);
    FileMetaData f1 = fileManager.getFileMetaData("/", "a");
    FileMetaData f2 = fileManager.getFileMetaData("/", "b");

    assertTrue(comp.compare(f1, f1) == 0);
    assertTrue(comp.compare(f1, f2) < 0);
    assertTrue(comp.compare(f2, f1) > 0);
  }
View Full Code Here

   *          the same as or greater than the first, respectively. However, if
   *          the counts are the same, then -n, 0 or +n is returned if the name
   *          of the first is less than, the same as or greater than the second
   */
  public int compare(Object o1, Object o2) {
    FileMetaData f1 = (FileMetaData)o1;
    FileMetaData f2 = (FileMetaData)o2;

    return f1.getName().compareTo(f2.getName());
  }
View Full Code Here

   * Gets the title of this view.
   *
   * @return the title as a String
   */
  public String getTitle() {
    FileMetaData file = (FileMetaData)getModel().get("file");
    return file.getName();
  }
View Full Code Here

    String name = StringUtils.filterHTML(request.getParameter("name"));
    String type = request.getParameter("type");
    String path = request.getParameter("path");

    FileManager fileManager = new FileManager(blog, type);
    FileMetaData directory = fileManager.getFileMetaData(path);
    try {
      fileManager.createDirectory(path, name);

      // if it's a theme file, also create a directory in blog.dir/theme
      if (type.equals(FileMetaData.THEME_FILE)) {
        fileManager = new FileManager(blog, FileMetaData.BLOG_DATA);
        fileManager.createDirectory("/theme" + path, name);
      }

      blog.info("Directory \"" + name + "\" created.");
    } catch (IllegalFileAccessException e) {
      return new ForbiddenView();
    }

    return new RedirectView(blog.getUrl() + directory.getUrl());
  }
View Full Code Here

    String path = request.getParameter("path");
    String newName = StringUtils.filterHTML(request.getParameter("newName"));
    String submit = request.getParameter("submit");

    FileManager fileManager = new FileManager(blog, type);
    FileMetaData directory = fileManager.getFileMetaData(path);
    try {
      if (submit.equalsIgnoreCase("rename")) {
        fileManager.renameFile(path, name, newName);

        // if it's a theme file, also rename the copy in blog.dir/theme
        if (type.equals(FileMetaData.THEME_FILE)) {
          fileManager = new FileManager(blog, FileMetaData.BLOG_DATA);
          fileManager.renameFile("/theme" + path, name, newName);
        }

        blog.info("File \"" + oldName + "\" renamed to \"" + newName + "\".");
      } else {
        if (FileManager.hasEnoughSpace(blog, fileManager.getFileMetaData(path, name).getSizeInKB())) {
          fileManager.copyFile(path, name, newName);

          // if it's a theme file, also create a copy in blog.dir/theme
          if (type.equals(FileMetaData.THEME_FILE)) {
            fileManager = new FileManager(blog, FileMetaData.BLOG_DATA);
            fileManager.copyFile("/theme" + path, name, newName);
          }

          blog.info("File \"" + oldName + "\" copied to \"" + newName + "\".");
        } else {
          return new NotEnoughSpaceView();
        }
      }
    } catch (IllegalFileAccessException e) {
      return new ForbiddenView();
    } catch (IOException ioe) {
      throw new ServletException(ioe);
    }

    return new RedirectView(blog.getUrl() + directory.getUrl());
  }
View Full Code Here

TOP

Related Classes of net.sourceforge.pebble.domain.FileMetaData

Copyright © 2018 www.massapicom. 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.