Example usage for com.amazonaws.services.s3.model Bucket getCreationDate

List of usage examples for com.amazonaws.services.s3.model Bucket getCreationDate

Introduction

In this page you can find the example usage for com.amazonaws.services.s3.model Bucket getCreationDate.

Prototype

public Date getCreationDate() 

Source Link

Document

Gets the bucket's creation date.

Usage

From source file:com.eucalyptus.objectstorage.providers.s3.S3ProviderClient.java

License:Open Source License

@Override
public ListAllMyBucketsResponseType listAllMyBuckets(ListAllMyBucketsType request) throws S3Exception {
    ListAllMyBucketsResponseType reply = request.getReply();
    OsgInternalS3Client internalS3Client = null;
    User requestUser = null;//from  www  .  j  a  v a2 s .c o  m
    try {
        requestUser = getRequestUser(request);
        //The euca-types
        ListAllMyBucketsList myBucketList = new ListAllMyBucketsList();
        myBucketList.setBuckets(new ArrayList<BucketListEntry>());

        //The s3 client types
        internalS3Client = getS3Client(requestUser);
        AmazonS3Client s3Client = internalS3Client.getS3Client();
        ListBucketsRequest listRequest = new ListBucketsRequest();

        //Map s3 client result to euca response message
        List<Bucket> result = s3Client.listBuckets(listRequest);
        for (Bucket b : result) {
            myBucketList.getBuckets().add(new BucketListEntry(b.getName(),
                    DateFormatter.dateToHeaderFormattedString(b.getCreationDate())));
        }

        reply.setBucketList(myBucketList);
    } catch (AmazonServiceException ex) {
        LOG.debug("Got service error from backend: " + ex.getMessage(), ex);
        throw S3ExceptionMapper.fromAWSJavaSDK(ex);
    }
    return reply;
}

From source file:com.intuit.tank.vmManager.environment.amazon.AmazonS3.java

License:Open Source License

public void createBucket(String bucketName) {
    AccessControlList configuration = s3Client.getBucketAcl(bucketName);
    if (configuration == null) {
        Bucket bucket = s3Client.createBucket(bucketName);
        LOG.info("Created bucket " + bucket.getName() + " at " + bucket.getCreationDate());
    }//from   w w w  .j  a v a2 s. co m
}

From source file:eu.stratosphere.nephele.fs.s3.S3FileSystem.java

License:Apache License

/**
 * {@inheritDoc}//w ww  .j  a v  a2  s .  co m
 */
@Override
public FileStatus getFileStatus(final Path f) throws IOException {

    final S3BucketObjectPair bop = this.directoryStructure.toBucketObjectPair(f);

    // This is the S3:/// base directory
    if (!bop.hasBucket() && !bop.hasObject()) {
        return new S3FileStatus(f, 0L, true, 0L, 0L);
    }

    try {
        if (bop.hasBucket() && !bop.hasObject()) {

            final List<Bucket> buckets = this.s3Client.listBuckets();
            final Iterator<Bucket> it = buckets.iterator();

            // Iterator throw list of buckets to find out creation date
            while (it.hasNext()) {

                final Bucket bucket = it.next();
                if (bop.getBucket().equals(bucket.getName())) {

                    final long creationDate = dateToLong(bucket.getCreationDate());
                    // S3 does not track access times, so this implementation always sets it to 0
                    return new S3FileStatus(f, 0L, true, creationDate, 0L);
                }
            }

            throw new FileNotFoundException("Cannot find " + f.toUri());
        }

        try {
            final ObjectMetadata om = this.s3Client.getObjectMetadata(bop.getBucket(), bop.getObject());
            final long modificationDate = dateToLong(om.getLastModified());
            // S3 does not track access times, so this implementation always sets it to 0
            if (objectRepresentsDirectory(bop.getObject(), om.getContentLength())) {
                return new S3FileStatus(f, 0L, true, modificationDate, 0L);
            } else {
                return new S3FileStatus(f, om.getContentLength(), false, modificationDate, 0L);
            }

        } catch (AmazonServiceException e) {
            if (e.getStatusCode() == HTTP_RESOURCE_NOT_FOUND_CODE) {
                throw new FileNotFoundException("Cannot find " + f.toUri());
            } else {
                throw e;
            }
        }
    } catch (AmazonClientException e) {
        throw new IOException(StringUtils.stringifyException(e));
    }
}

From source file:eu.stratosphere.nephele.fs.s3.S3FileSystem.java

License:Apache License

/**
 * {@inheritDoc}//from  w w w .ja v a 2  s.  c om
 */
@Override
public FileStatus[] listStatus(final Path f) throws IOException {

    final S3BucketObjectPair bop = this.directoryStructure.toBucketObjectPair(f);

    try {

        if (!bop.hasBucket()) {

            final List<Bucket> list = this.s3Client.listBuckets();
            final S3FileStatus[] array = new S3FileStatus[list.size()];
            final Iterator<Bucket> it = list.iterator();
            int i = 0;
            while (it.hasNext()) {
                final Bucket bucket = it.next();
                final long creationDate = dateToLong(bucket.getCreationDate());
                // S3 does not track access times, so this implementation always sets it to 0
                final S3FileStatus status = new S3FileStatus(
                        extendPath(f, bucket.getName() + S3_DIRECTORY_SEPARATOR), 0, true, creationDate, 0L);
                array[i++] = status;
            }

            return array;
        }

        if (bop.hasBucket() && !bop.hasObject()) {

            // Check if the bucket really exists
            if (!this.s3Client.doesBucketExist(bop.getBucket())) {
                throw new FileNotFoundException("Cannot find " + f.toUri());
            }

            return listBucketContent(f, bop);

        } else {

            final ObjectMetadata omd = this.s3Client.getObjectMetadata(bop.getBucket(), bop.getObject());
            if (objectRepresentsDirectory(bop.getObject(), omd.getContentLength())) {

                return listBucketContent(f, bop);

            } else {
                final S3FileStatus fileStatus = new S3FileStatus(f, omd.getContentLength(), false,
                        dateToLong(omd.getLastModified()), 0L);

                return new FileStatus[] { fileStatus };
            }

        }

    } catch (AmazonClientException e) {
        throw new IOException(StringUtils.stringifyException(e));
    }
}

From source file:eu.stratosphere.runtime.fs.s3.S3FileSystem.java

License:Apache License

@Override
public FileStatus getFileStatus(final Path f) throws IOException {

    final S3BucketObjectPair bop = this.directoryStructure.toBucketObjectPair(f);

    // This is the S3:/// base directory
    if (!bop.hasBucket() && !bop.hasObject()) {
        return new S3FileStatus(f, 0L, true, 0L, 0L);
    }//from ww  w.ja  v a2s .  c om

    try {
        if (bop.hasBucket() && !bop.hasObject()) {

            final List<Bucket> buckets = this.s3Client.listBuckets();
            final Iterator<Bucket> it = buckets.iterator();

            // Iterator throw list of buckets to find out creation date
            while (it.hasNext()) {

                final Bucket bucket = it.next();
                if (bop.getBucket().equals(bucket.getName())) {

                    final long creationDate = dateToLong(bucket.getCreationDate());
                    // S3 does not track access times, so this implementation always sets it to 0
                    return new S3FileStatus(f, 0L, true, creationDate, 0L);
                }
            }

            throw new FileNotFoundException("Cannot find " + f.toUri());
        }

        try {
            final ObjectMetadata om = this.s3Client.getObjectMetadata(bop.getBucket(), bop.getObject());
            final long modificationDate = dateToLong(om.getLastModified());
            // S3 does not track access times, so this implementation always sets it to 0
            if (objectRepresentsDirectory(bop.getObject(), om.getContentLength())) {
                return new S3FileStatus(f, 0L, true, modificationDate, 0L);
            } else {
                return new S3FileStatus(f, om.getContentLength(), false, modificationDate, 0L);
            }

        } catch (AmazonServiceException e) {
            if (e.getStatusCode() == HTTP_RESOURCE_NOT_FOUND_CODE) {
                throw new FileNotFoundException("Cannot find " + f.toUri());
            } else {
                throw e;
            }
        }
    } catch (AmazonClientException e) {
        throw new IOException(StringUtils.stringifyException(e));
    }
}

From source file:eu.stratosphere.runtime.fs.s3.S3FileSystem.java

License:Apache License

@Override
public FileStatus[] listStatus(final Path f) throws IOException {

    final S3BucketObjectPair bop = this.directoryStructure.toBucketObjectPair(f);

    try {//ww  w .j  a v a2 s . c  om

        if (!bop.hasBucket()) {

            final List<Bucket> list = this.s3Client.listBuckets();
            final S3FileStatus[] array = new S3FileStatus[list.size()];
            final Iterator<Bucket> it = list.iterator();
            int i = 0;
            while (it.hasNext()) {
                final Bucket bucket = it.next();
                final long creationDate = dateToLong(bucket.getCreationDate());
                // S3 does not track access times, so this implementation always sets it to 0
                final S3FileStatus status = new S3FileStatus(
                        extendPath(f, bucket.getName() + S3_DIRECTORY_SEPARATOR), 0, true, creationDate, 0L);
                array[i++] = status;
            }

            return array;
        }

        if (bop.hasBucket() && !bop.hasObject()) {

            // Check if the bucket really exists
            if (!this.s3Client.doesBucketExist(bop.getBucket())) {
                throw new FileNotFoundException("Cannot find " + f.toUri());
            }

            return listBucketContent(f, bop);

        } else {

            final ObjectMetadata omd = this.s3Client.getObjectMetadata(bop.getBucket(), bop.getObject());
            if (objectRepresentsDirectory(bop.getObject(), omd.getContentLength())) {

                return listBucketContent(f, bop);

            } else {
                final S3FileStatus fileStatus = new S3FileStatus(f, omd.getContentLength(), false,
                        dateToLong(omd.getLastModified()), 0L);

                return new FileStatus[] { fileStatus };
            }

        }

    } catch (AmazonClientException e) {
        throw new IOException(StringUtils.stringifyException(e));
    }
}

From source file:jp.classmethod.aws.petrucci.Tasks.java

License:Apache License

@Scheduled(cron = "0 */2 * * * *")
public void reportS3AndEC2() {
    logger.info("report start");
    DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    StringBuilder sb = new StringBuilder();

    logger.info("check S3 buckets");
    sb.append("== S3 Buckets ==\n");
    try {// w  ww.j av  a 2s .c  o  m
        for (Bucket bucket : s3.listBuckets()) {
            sb.append(
                    String.format("%s (created:%s)%n", bucket.getName(), df.format(bucket.getCreationDate())));
        }
    } catch (AmazonClientException e) {
        logger.error("unexpected exception", e);
    }

    sb.append("\n");

    logger.info("check EC2 instances");
    sb.append("== EC2 Instances ==").append("\n");
    try {
        DescribeInstancesResult result = ec2.describeInstances();
        for (Reservation reservation : result.getReservations()) {
            for (Instance instance : reservation.getInstances()) {
                sb.append(String.format("%s %s %s%n", instance.getInstanceId(), instance.getImageId(),
                        instance.getInstanceType(), instance.getInstanceLifecycle()));
            }
        }
    } catch (AmazonClientException e) {
        logger.error("unexpected exception", e);
    }

    if (logger.isInfoEnabled()) {
        Scanner scanner = null;
        try {
            scanner = new Scanner(sb.toString());
            while (scanner.hasNextLine()) {
                logger.info("{}", scanner.nextLine());
            }
        } finally {
            if (scanner != null) {
                scanner.close();
            }
        }
    }

    logger.info("send report mail");
    ses.sendEmail(new SendEmailRequest(mailaddress, new Destination(Collections.singletonList(mailaddress)),
            new Message(new Content("S3 & EC2 Report"), new Body(new Content(sb.toString())))));

    logger.info("report end");
}

From source file:md.djembe.aws.AmazonS3WebClient.java

License:Apache License

public static void listBucket() {
    AmazonS3 s3Client = getS3Client();//from ww  w .java  2 s .c  o  m
    List<Bucket> buckets = s3Client.listBuckets();
    for (Bucket bucket : buckets) {
        LOGGER.info("bucket : " + bucket.getName() + "\t" + StringUtils.fromDate(bucket.getCreationDate()));
    }
}

From source file:org.alanwilliamson.amazon.s3.ListBuckets.java

License:Open Source License

public cfData execute(cfSession _session, cfArgStructData argStruct) throws cfmRunTimeException {

    AmazonKey amazonKey = getAmazonKey(_session, argStruct);
    AmazonS3 s3Client = getAmazonS3(amazonKey);

    try {// w  ww  .  j a  v a  2  s. com
        //Create the results
        cfQueryResultData qD = new cfQueryResultData(new String[] { "bucket", "createdate" }, null);
        qD.setQuerySource("AmazonS3." + amazonKey.getDataSource());

        List<Bucket> bucketList = s3Client.listBuckets();

        for (Iterator<Bucket> it = bucketList.iterator(); it.hasNext();) {
            Bucket bucket = it.next();

            qD.addRow(1);
            qD.setCurrentRow(qD.getSize());
            qD.setCell(1, new cfStringData(bucket.getName()));
            qD.setCell(2, new cfDateData(bucket.getCreationDate()));
        }

        return qD;
    } catch (Exception e) {
        throwException(_session, "AmazonS3: " + e.getMessage());
        return cfBooleanData.FALSE;
    }
}

From source file:org.duracloud.s3storage.S3StorageProvider.java

License:Apache License

/**
 * {@inheritDoc}/*  www  .  j ava2  s  .  c om*/
 */
public void createSpace(String spaceId) {
    log.debug("createSpace(" + spaceId + ")");
    throwIfSpaceExists(spaceId);

    Bucket bucket = createBucket(spaceId);

    Date created = bucket.getCreationDate();
    if (created == null) {
        created = new Date();
    }

    // Empty ACL set for new space (no permissions set)
    Map<String, AclType> spaceACLs = new HashMap<>();

    // Add space properties
    Map<String, String> spaceProperties = new HashMap<>();
    spaceProperties.put(PROPERTIES_SPACE_CREATED, formattedDate(created));

    try {
        setNewSpaceProperties(spaceId, spaceProperties, spaceACLs);
    } catch (StorageException e) {
        removeSpace(spaceId);
        String err = "Unable to create space due to: " + e.getMessage();
        throw new StorageException(err, e, RETRY);
    }
}