|
@@ -22,6 +22,7 @@ import com.google.common.base.Preconditions;
|
|
import org.apache.hadoop.conf.Configuration;
|
|
import org.apache.hadoop.conf.Configuration;
|
|
import org.apache.hadoop.hdds.conf.OzoneConfiguration;
|
|
import org.apache.hadoop.hdds.conf.OzoneConfiguration;
|
|
import org.apache.hadoop.fs.StorageType;
|
|
import org.apache.hadoop.fs.StorageType;
|
|
|
|
+import org.apache.hadoop.hdds.scm.client.HddsClientUtils;
|
|
import org.apache.hadoop.io.IOUtils;
|
|
import org.apache.hadoop.io.IOUtils;
|
|
import org.apache.hadoop.ipc.Client;
|
|
import org.apache.hadoop.ipc.Client;
|
|
import org.apache.hadoop.ipc.ProtobufRpcEngine;
|
|
import org.apache.hadoop.ipc.ProtobufRpcEngine;
|
|
@@ -170,7 +171,7 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public void createVolume(String volumeName, VolumeArgs volArgs)
|
|
public void createVolume(String volumeName, VolumeArgs volArgs)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName);
|
|
Preconditions.checkNotNull(volArgs);
|
|
Preconditions.checkNotNull(volArgs);
|
|
|
|
|
|
String admin = volArgs.getAdmin() == null ?
|
|
String admin = volArgs.getAdmin() == null ?
|
|
@@ -214,7 +215,7 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public void setVolumeOwner(String volumeName, String owner)
|
|
public void setVolumeOwner(String volumeName, String owner)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName);
|
|
Preconditions.checkNotNull(owner);
|
|
Preconditions.checkNotNull(owner);
|
|
keySpaceManagerClient.setOwner(volumeName, owner);
|
|
keySpaceManagerClient.setOwner(volumeName, owner);
|
|
}
|
|
}
|
|
@@ -222,7 +223,7 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public void setVolumeQuota(String volumeName, OzoneQuota quota)
|
|
public void setVolumeQuota(String volumeName, OzoneQuota quota)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName);
|
|
Preconditions.checkNotNull(quota);
|
|
Preconditions.checkNotNull(quota);
|
|
long quotaInBytes = quota.sizeInBytes();
|
|
long quotaInBytes = quota.sizeInBytes();
|
|
keySpaceManagerClient.setQuota(volumeName, quotaInBytes);
|
|
keySpaceManagerClient.setQuota(volumeName, quotaInBytes);
|
|
@@ -231,7 +232,7 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public OzoneVolume getVolumeDetails(String volumeName)
|
|
public OzoneVolume getVolumeDetails(String volumeName)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName);
|
|
KsmVolumeArgs volume = keySpaceManagerClient.getVolumeInfo(volumeName);
|
|
KsmVolumeArgs volume = keySpaceManagerClient.getVolumeInfo(volumeName);
|
|
return new OzoneVolume(
|
|
return new OzoneVolume(
|
|
conf,
|
|
conf,
|
|
@@ -253,7 +254,7 @@ public class RpcClient implements ClientProtocol {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void deleteVolume(String volumeName) throws IOException {
|
|
public void deleteVolume(String volumeName) throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName);
|
|
keySpaceManagerClient.deleteVolume(volumeName);
|
|
keySpaceManagerClient.deleteVolume(volumeName);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -307,8 +308,7 @@ public class RpcClient implements ClientProtocol {
|
|
public void createBucket(
|
|
public void createBucket(
|
|
String volumeName, String bucketName, BucketArgs bucketArgs)
|
|
String volumeName, String bucketName, BucketArgs bucketArgs)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(bucketArgs);
|
|
Preconditions.checkNotNull(bucketArgs);
|
|
|
|
|
|
Boolean isVersionEnabled = bucketArgs.getVersioning() == null ?
|
|
Boolean isVersionEnabled = bucketArgs.getVersioning() == null ?
|
|
@@ -346,8 +346,7 @@ public class RpcClient implements ClientProtocol {
|
|
public void addBucketAcls(
|
|
public void addBucketAcls(
|
|
String volumeName, String bucketName, List<OzoneAcl> addAcls)
|
|
String volumeName, String bucketName, List<OzoneAcl> addAcls)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(addAcls);
|
|
Preconditions.checkNotNull(addAcls);
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
builder.setVolumeName(volumeName)
|
|
builder.setVolumeName(volumeName)
|
|
@@ -360,8 +359,7 @@ public class RpcClient implements ClientProtocol {
|
|
public void removeBucketAcls(
|
|
public void removeBucketAcls(
|
|
String volumeName, String bucketName, List<OzoneAcl> removeAcls)
|
|
String volumeName, String bucketName, List<OzoneAcl> removeAcls)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(removeAcls);
|
|
Preconditions.checkNotNull(removeAcls);
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
builder.setVolumeName(volumeName)
|
|
builder.setVolumeName(volumeName)
|
|
@@ -374,8 +372,7 @@ public class RpcClient implements ClientProtocol {
|
|
public void setBucketVersioning(
|
|
public void setBucketVersioning(
|
|
String volumeName, String bucketName, Boolean versioning)
|
|
String volumeName, String bucketName, Boolean versioning)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(versioning);
|
|
Preconditions.checkNotNull(versioning);
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
builder.setVolumeName(volumeName)
|
|
builder.setVolumeName(volumeName)
|
|
@@ -388,8 +385,7 @@ public class RpcClient implements ClientProtocol {
|
|
public void setBucketStorageType(
|
|
public void setBucketStorageType(
|
|
String volumeName, String bucketName, StorageType storageType)
|
|
String volumeName, String bucketName, StorageType storageType)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(storageType);
|
|
Preconditions.checkNotNull(storageType);
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
KsmBucketArgs.Builder builder = KsmBucketArgs.newBuilder();
|
|
builder.setVolumeName(volumeName)
|
|
builder.setVolumeName(volumeName)
|
|
@@ -401,8 +397,7 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public void deleteBucket(
|
|
public void deleteBucket(
|
|
String volumeName, String bucketName) throws IOException {
|
|
String volumeName, String bucketName) throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
keySpaceManagerClient.deleteBucket(volumeName, bucketName);
|
|
keySpaceManagerClient.deleteBucket(volumeName, bucketName);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -415,8 +410,7 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public OzoneBucket getBucketDetails(
|
|
public OzoneBucket getBucketDetails(
|
|
String volumeName, String bucketName) throws IOException {
|
|
String volumeName, String bucketName) throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
KsmBucketInfo bucketArgs =
|
|
KsmBucketInfo bucketArgs =
|
|
keySpaceManagerClient.getBucketInfo(volumeName, bucketName);
|
|
keySpaceManagerClient.getBucketInfo(volumeName, bucketName);
|
|
return new OzoneBucket(
|
|
return new OzoneBucket(
|
|
@@ -454,6 +448,8 @@ public class RpcClient implements ClientProtocol {
|
|
String volumeName, String bucketName, String keyName, long size,
|
|
String volumeName, String bucketName, String keyName, long size,
|
|
ReplicationType type, ReplicationFactor factor)
|
|
ReplicationType type, ReplicationFactor factor)
|
|
throws IOException {
|
|
throws IOException {
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
|
|
+ HddsClientUtils.checkNotNull(keyName, type, factor);
|
|
String requestId = UUID.randomUUID().toString();
|
|
String requestId = UUID.randomUUID().toString();
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
.setVolumeName(volumeName)
|
|
.setVolumeName(volumeName)
|
|
@@ -486,8 +482,7 @@ public class RpcClient implements ClientProtocol {
|
|
public OzoneInputStream getKey(
|
|
public OzoneInputStream getKey(
|
|
String volumeName, String bucketName, String keyName)
|
|
String volumeName, String bucketName, String keyName)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(keyName);
|
|
Preconditions.checkNotNull(keyName);
|
|
String requestId = UUID.randomUUID().toString();
|
|
String requestId = UUID.randomUUID().toString();
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
@@ -508,8 +503,7 @@ public class RpcClient implements ClientProtocol {
|
|
public void deleteKey(
|
|
public void deleteKey(
|
|
String volumeName, String bucketName, String keyName)
|
|
String volumeName, String bucketName, String keyName)
|
|
throws IOException {
|
|
throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
Preconditions.checkNotNull(keyName);
|
|
Preconditions.checkNotNull(keyName);
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
.setVolumeName(volumeName)
|
|
.setVolumeName(volumeName)
|
|
@@ -522,10 +516,8 @@ public class RpcClient implements ClientProtocol {
|
|
@Override
|
|
@Override
|
|
public void renameKey(String volumeName, String bucketName,
|
|
public void renameKey(String volumeName, String bucketName,
|
|
String fromKeyName, String toKeyName) throws IOException {
|
|
String fromKeyName, String toKeyName) throws IOException {
|
|
- Preconditions.checkNotNull(volumeName);
|
|
|
|
- Preconditions.checkNotNull(bucketName);
|
|
|
|
- Preconditions.checkNotNull(fromKeyName);
|
|
|
|
- Preconditions.checkNotNull(toKeyName);
|
|
|
|
|
|
+ HddsClientUtils.verifyResourceName(volumeName, bucketName);
|
|
|
|
+ HddsClientUtils.checkNotNull(fromKeyName, toKeyName);
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
KsmKeyArgs keyArgs = new KsmKeyArgs.Builder()
|
|
.setVolumeName(volumeName)
|
|
.setVolumeName(volumeName)
|
|
.setBucketName(bucketName)
|
|
.setBucketName(bucketName)
|