blob: 5e41d2d5134678a163afece752f809f6eef56d3f [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
package org.apache.hadoop.ozone.om.response;
import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
import org.apache.hadoop.ozone.om.helpers.OmVolumeArgs;
import org.apache.hadoop.ozone.om.request.s3.bucket.S3BucketCreateRequest;
import org.apache.hadoop.ozone.om.response.bucket.OMBucketCreateResponse;
import org.apache.hadoop.ozone.om.response.s3.bucket.S3BucketCreateResponse;
import org.apache.hadoop.ozone.om.response.volume.OMVolumeCreateResponse;
import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos;
import org.apache.hadoop.util.Time;
/**
* Helper class to test OMClientResponse classes.
*/
public final class TestOMResponseUtils {
// No one can instantiate, this is just utility class with all static methods.
private TestOMResponseUtils() {
}
public static OmBucketInfo createBucket(String volume, String bucket) {
return OmBucketInfo.newBuilder().setVolumeName(volume).setBucketName(bucket)
.setCreationTime(Time.now()).setIsVersionEnabled(true).addMetadata(
"key1", "value1").build();
}
public static S3BucketCreateResponse createS3BucketResponse(String userName,
String volumeName, String s3BucketName) {
OzoneManagerProtocolProtos.OMResponse omResponse =
OzoneManagerProtocolProtos.OMResponse.newBuilder()
.setCmdType(OzoneManagerProtocolProtos.Type.CreateS3Bucket)
.setStatus(OzoneManagerProtocolProtos.Status.OK)
.setSuccess(true)
.setCreateS3BucketResponse(
OzoneManagerProtocolProtos.S3CreateBucketResponse
.getDefaultInstance())
.build();
OzoneManagerProtocolProtos.UserVolumeInfo userVolumeInfo =
OzoneManagerProtocolProtos.UserVolumeInfo.newBuilder()
.setObjectID(1)
.setUpdateID(1)
.addVolumeNames(volumeName).build();
OmVolumeArgs omVolumeArgs = OmVolumeArgs.newBuilder()
.setOwnerName(userName).setAdminName(userName)
.setVolume(volumeName).setCreationTime(Time.now()).build();
OMVolumeCreateResponse omVolumeCreateResponse =
new OMVolumeCreateResponse(omVolumeArgs, userVolumeInfo, omResponse);
OmBucketInfo omBucketInfo = TestOMResponseUtils.createBucket(
volumeName, s3BucketName);
OMBucketCreateResponse omBucketCreateResponse =
new OMBucketCreateResponse(omBucketInfo, omResponse);
String s3Mapping = S3BucketCreateRequest.formatS3MappingName(volumeName,
s3BucketName);
return
new S3BucketCreateResponse(omVolumeCreateResponse,
omBucketCreateResponse, s3BucketName, s3Mapping, omResponse);
}
}