1 /**
2 *
3 * Copyright (C) 2011 Cloud Conscious, LLC. <info@cloudconscious.com>
4 *
5 * ====================================================================
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 * ====================================================================
18 */
19 package org.jclouds.cloudsigma.domain;
20
21 import javax.annotation.Nullable;
22
23 /**
24 *
25 * @author Adrian Cole
26 */
27 public class DriveData extends Drive {
28 public static class Builder extends Drive.Builder {
29
30 /**
31 * {@inheritDoc}
32 */
33 @Override
34 public Builder claimType(ClaimType claimType) {
35 return Builder.class.cast(super.claimType(claimType));
36 }
37
38 /**
39 * {@inheritDoc}
40 */
41 @Override
42 public Builder name(String name) {
43 return Builder.class.cast(super.name(name));
44 }
45
46 /**
47 * {@inheritDoc}
48 */
49 @Override
50 public Builder readers(Iterable<String> readers) {
51 return Builder.class.cast(super.readers(readers));
52 }
53
54 /**
55 * {@inheritDoc}
56 */
57 @Override
58 public Builder size(long size) {
59 return Builder.class.cast(super.size(size));
60 }
61
62 /**
63 * {@inheritDoc}
64 */
65 @Override
66 public Builder use(Iterable<String> use) {
67 return Builder.class.cast(super.use(use));
68 }
69
70 public DriveData build() {
71 return new DriveData(uuid, name, size, claimType, readers, use);
72 }
73 }
74
75 public DriveData(@Nullable String uuid, String name, long size, @Nullable ClaimType claimType,
76 Iterable<String> readers, Iterable<String> use) {
77 super(uuid, name, size, claimType, readers, use);
78 }
79 }