From d4e9b0dad4edf1c493c1eead0456041df897541a Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 16 Jan 2013 07:56:29 -0500
Subject: [PATCH] Updated docs for upgrade procedure
---
src/com/gitblit/utils/FileUtils.java | 52 ++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 42 insertions(+), 10 deletions(-)
diff --git a/src/com/gitblit/utils/FileUtils.java b/src/com/gitblit/utils/FileUtils.java
index cba88d0..a21b512 100644
--- a/src/com/gitblit/utils/FileUtils.java
+++ b/src/com/gitblit/utils/FileUtils.java
@@ -99,6 +99,25 @@
}
return defaultValue;
}
+
+ /**
+ * Returns the byte [] content of the specified file.
+ *
+ * @param file
+ * @return the byte content of the file
+ */
+ public static byte [] readContent(File file) {
+ byte [] buffer = new byte[(int) file.length()];
+ try {
+ BufferedInputStream is = new BufferedInputStream(new FileInputStream(file));
+ is.read(buffer, 0, buffer.length);
+ is.close();
+ } catch (Throwable t) {
+ System.err.println("Failed to read byte content of " + file.getAbsolutePath());
+ t.printStackTrace();
+ }
+ return buffer;
+ }
/**
* Returns the string content of the specified file.
@@ -157,19 +176,17 @@
public static long folderSize(File directory) {
if (directory == null || !directory.exists()) {
return -1;
- }
- if (directory.isFile()) {
- return directory.length();
- }
- long length = 0;
- for (File file : directory.listFiles()) {
- if (file.isFile()) {
- length += file.length();
- } else {
+ }
+ if (directory.isDirectory()) {
+ long length = 0;
+ for (File file : directory.listFiles()) {
length += folderSize(file);
}
+ return length;
+ } else if (directory.isFile()) {
+ return directory.length();
}
- return length;
+ return 0;
}
/**
@@ -257,4 +274,19 @@
return path.getAbsoluteFile();
}
}
+
+ public static File resolveParameter(String parameter, File aFolder, String path) {
+ if (aFolder == null) {
+ // strip any parameter reference
+ path = path.replace(parameter, "").trim();
+ if (path.length() > 0 && path.charAt(0) == '/') {
+ // strip leading /
+ path = path.substring(1);
+ }
+ } else if (path.contains(parameter)) {
+ // replace parameter with path
+ path = path.replace(parameter, aFolder.getAbsolutePath());
+ }
+ return new File(path);
+ }
}
--
Gitblit v1.9.1