blob: 474b5face999ec27f606534df8a96cabdd7a2475 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2012, 2015 Wind River Systems, Inc. and others. All rights reserved.
* This program and the accompanying materials are made available under the terms
* of the Eclipse Public License v1.0 which accompanies this distribution, and is
* available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tcf.te.tests.tcf.filesystem.url;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import org.eclipse.tcf.te.tcf.filesystem.core.internal.url.TcfURLConnection;
import org.eclipse.tcf.te.tcf.filesystem.core.internal.utils.CacheManager;
import org.eclipse.tcf.te.tests.tcf.filesystem.FSPeerTestCase;
public class URLTestBase extends FSPeerTestCase {
protected String readFileContent() throws IOException {
printDebugMessage("Read file " + testFile.getLocation() + "..."); //$NON-NLS-1$ //$NON-NLS-2$
URL url = testFile.getLocationURL();
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(url.openStream()));
StringBuilder buffer = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
return buffer.toString();
}
finally {
if (reader != null) {
try {
reader.close();
}
catch (Exception e) {
}
}
}
}
protected void writeFileContent(String content) throws IOException {
printDebugMessage("Write file " + testFile.getLocation() + "..."); //$NON-NLS-1$ //$NON-NLS-2$
try {
// last modification time needs to change
Thread.sleep(1000);
} catch (InterruptedException e) {
}
BufferedOutputStream output = null;
try {
URL url = testFile.getLocationURL();
TcfURLConnection connection = (TcfURLConnection) url.openConnection();
connection.setDoInput(false);
connection.setDoOutput(true);
output = new BufferedOutputStream(connection.getOutputStream());
output.write(content.getBytes());
output.flush();
}
finally {
if (output != null) {
try {
output.close();
}
catch (Exception e) {
}
}
}
}
protected void writeCacheFileContent(String content) throws IOException {
try {
// last modification time needs to change
Thread.sleep(1);
} catch (InterruptedException e) {
}
File file = CacheManager.getCacheFile(testFile);
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(content);
writer.close();
}
}