1/*
2 * Copyright 2007, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * All rights reserved. Distributed under the terms of the MIT license.
4 */
5#ifndef SYMLINK_H
6#define SYMLINK_H
7
8#include "Node.h"
9#include "String.h"
10
11class SymLink : public Node {
12public:
13	SymLink(Volume *volume);
14	virtual ~SymLink();
15
16	virtual status_t SetSize(off_t newSize);
17	virtual off_t GetSize() const;
18
19	status_t SetLinkedPath(const char *path);
20	const char *GetLinkedPath() const { return fLinkedPath.GetString(); }
21	size_t GetLinkedPathLength() const { return fLinkedPath.GetLength(); }
22
23	// debugging
24	virtual void GetAllocationInfo(AllocationInfo &info);
25
26private:
27	String	fLinkedPath;
28};
29
30#endif	// SYMLINK_H
31