1/*
2 * Copyright 2007, Ingo Weinhold, bonefish@users.sf.net.
3 * Distributed under the terms of the MIT License.
4 */
5
6#include <DiskSystemAddOn.h>
7
8#include <DiskDeviceDefs.h>
9#include <Errors.h>
10
11
12// #pragma mark - BDiskSystemAddOn
13
14
15BDiskSystemAddOn::BDiskSystemAddOn(const char* name, uint32 flags)
16	:
17	fName(name),
18	fFlags(flags)
19{
20}
21
22
23BDiskSystemAddOn::~BDiskSystemAddOn()
24{
25}
26
27
28const char*
29BDiskSystemAddOn::Name() const
30{
31	return fName.String();
32}
33
34
35uint32
36BDiskSystemAddOn::Flags() const
37{
38	return fFlags;
39}
40
41
42bool
43BDiskSystemAddOn::CanInitialize(const BMutablePartition* partition)
44{
45	return false;
46}
47
48
49status_t
50BDiskSystemAddOn::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type,
51	BPartitionParameterEditor** editor)
52{
53	return B_NOT_SUPPORTED;
54}
55
56
57status_t
58BDiskSystemAddOn::ValidateInitialize(const BMutablePartition* partition,
59	BString* name, const char* parameters)
60{
61	return B_BAD_VALUE;
62}
63
64
65status_t
66BDiskSystemAddOn::Initialize(BMutablePartition* partition, const char* name,
67	const char* parameters, BPartitionHandle** handle)
68{
69	return B_NOT_SUPPORTED;
70}
71
72
73status_t
74BDiskSystemAddOn::GetTypeForContentType(const char* contentType, BString* type)
75{
76	return B_NOT_SUPPORTED;
77}
78
79
80bool
81BDiskSystemAddOn::IsSubSystemFor(const BMutablePartition* child)
82{
83	return false;
84}
85
86
87// #pragma mark - BPartitionHandle
88
89
90BPartitionHandle::BPartitionHandle(BMutablePartition* partition)
91	:
92	fPartition(partition)
93{
94}
95
96
97BPartitionHandle::~BPartitionHandle()
98{
99}
100
101
102BMutablePartition*
103BPartitionHandle::Partition() const
104{
105	return fPartition;
106}
107
108
109uint32
110BPartitionHandle::SupportedOperations(uint32 mask)
111{
112	return 0;
113}
114
115
116uint32
117BPartitionHandle::SupportedChildOperations(const BMutablePartition* child,
118	uint32 mask)
119{
120	return 0;
121}
122
123
124bool
125BPartitionHandle::SupportsInitializingChild(const BMutablePartition* child,
126	const char* diskSystem)
127{
128	return false;
129}
130
131
132status_t
133BPartitionHandle::GetNextSupportedType(const BMutablePartition* child,
134	int32* cookie, BString* type)
135{
136	return B_ENTRY_NOT_FOUND;
137}
138
139
140status_t
141BPartitionHandle::GetPartitioningInfo(BPartitioningInfo* info)
142{
143	return B_NOT_SUPPORTED;
144}
145
146
147status_t
148BPartitionHandle::Defragment()
149{
150	return B_NOT_SUPPORTED;
151}
152
153
154status_t
155BPartitionHandle::Repair(bool checkOnly)
156{
157	return B_NOT_SUPPORTED;
158}
159
160
161status_t
162BPartitionHandle::ValidateResize(off_t* size)
163{
164	return B_BAD_VALUE;
165}
166
167
168status_t
169BPartitionHandle::ValidateResizeChild(const BMutablePartition* child,
170	off_t* size)
171{
172	return B_BAD_VALUE;
173}
174
175
176status_t
177BPartitionHandle::Resize(off_t size)
178{
179	return B_NOT_SUPPORTED;
180}
181
182
183status_t
184BPartitionHandle::ResizeChild(BMutablePartition* child, off_t size)
185{
186	return B_NOT_SUPPORTED;
187}
188
189
190status_t
191BPartitionHandle::ValidateMove(off_t* offset)
192{
193	// Usually moving a disk system is a no-op for the content disk system,
194	// so we default to true here.
195	return B_OK;
196}
197
198
199status_t
200BPartitionHandle::ValidateMoveChild(const BMutablePartition* child,
201	off_t* offset)
202{
203	return B_BAD_VALUE;
204}
205
206
207status_t
208BPartitionHandle::Move(off_t offset)
209{
210	// Usually moving a disk system is a no-op for the content disk system,
211	// so we default to OK here.
212	return B_OK;
213}
214
215
216status_t
217BPartitionHandle::MoveChild(BMutablePartition* child, off_t offset)
218{
219	return B_NOT_SUPPORTED;
220}
221
222
223status_t
224BPartitionHandle::ValidateSetContentName(BString* name)
225{
226	return B_BAD_VALUE;
227}
228
229
230status_t
231BPartitionHandle::ValidateSetName(const BMutablePartition* child,
232	BString* name)
233{
234	return B_BAD_VALUE;
235}
236
237
238status_t
239BPartitionHandle::SetContentName(const char* name)
240{
241	return B_NOT_SUPPORTED;
242}
243
244
245status_t
246BPartitionHandle::SetName(BMutablePartition* child, const char* name)
247{
248	return B_NOT_SUPPORTED;
249}
250
251
252status_t
253BPartitionHandle::ValidateSetType(const BMutablePartition* child,
254	const char* type)
255{
256	return B_BAD_VALUE;
257}
258
259
260status_t
261BPartitionHandle::SetType(BMutablePartition* child, const char* type)
262{
263	return B_NOT_SUPPORTED;
264}
265
266
267status_t
268BPartitionHandle::GetContentParameterEditor(BPartitionParameterEditor** editor)
269{
270	return B_NOT_SUPPORTED;
271}
272
273
274status_t
275BPartitionHandle::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type,
276	BPartitionParameterEditor** editor)
277{
278	return B_NOT_SUPPORTED;
279}
280
281
282status_t
283BPartitionHandle::ValidateSetContentParameters(const char* parameters)
284{
285	return B_BAD_VALUE;
286}
287
288
289status_t
290BPartitionHandle::ValidateSetParameters(const BMutablePartition* child,
291	const char* parameters)
292{
293	return B_BAD_VALUE;
294}
295
296
297status_t
298BPartitionHandle::SetContentParameters(const char* parameters)
299{
300	return B_NOT_SUPPORTED;
301}
302
303
304status_t
305BPartitionHandle::SetParameters(BMutablePartition* child,
306	const char* parameters)
307{
308	return B_NOT_SUPPORTED;
309}
310
311
312status_t
313BPartitionHandle::ValidateCreateChild(off_t* offset, off_t* size,
314	const char* type, BString* name, const char* parameters)
315{
316	return B_BAD_VALUE;
317}
318
319
320status_t
321BPartitionHandle::CreateChild(off_t offset, off_t size, const char* type,
322	const char* name, const char* parameters, BMutablePartition** child)
323{
324	return B_NOT_SUPPORTED;
325}
326
327
328status_t
329BPartitionHandle::DeleteChild(BMutablePartition* child)
330{
331	return B_NOT_SUPPORTED;
332}
333