Search in sources :

Example 21 with ListObjectsRequest

use of software.amazon.awssdk.services.s3.model.ListObjectsRequest in project aws-doc-sdk-examples by awsdocs.

the class IAMScenario method assumeGivenRole.

// Invoke an Amazon S3 operation using the Assumed Role.
public static void assumeGivenRole(String roleArn, String roleSessionName, String bucketName) {
    StsClient stsClient = StsClient.builder().region(Region.US_EAST_1).build();
    try {
        AssumeRoleRequest roleRequest = AssumeRoleRequest.builder().roleArn(roleArn).roleSessionName(roleSessionName).build();
        AssumeRoleResponse roleResponse = stsClient.assumeRole(roleRequest);
        Credentials myCreds = roleResponse.credentials();
        String key = myCreds.accessKeyId();
        String secKey = myCreds.secretAccessKey();
        String secToken = myCreds.sessionToken();
        // List all objects in an Amazon S3 bucket using the temp creds.
        Region region = Region.US_EAST_1;
        S3Client s3 = S3Client.builder().credentialsProvider(StaticCredentialsProvider.create(AwsSessionCredentials.create(key, secKey, secToken))).region(region).build();
        System.out.println("Created a S3Client using temp credentials.");
        System.out.println("Listing objects in " + bucketName);
        ListObjectsRequest listObjects = ListObjectsRequest.builder().bucket(bucketName).build();
        ListObjectsResponse res = s3.listObjects(listObjects);
        List<S3Object> objects = res.contents();
        for (S3Object myValue : objects) {
            System.out.println("The name of the key is " + myValue.key());
            System.out.println("The owner is " + myValue.owner());
        }
    } catch (StsException e) {
        System.err.println(e.getMessage());
        System.exit(1);
    }
}
Also used : StsClient(software.amazon.awssdk.services.sts.StsClient) AssumeRoleRequest(software.amazon.awssdk.services.sts.model.AssumeRoleRequest) ListObjectsRequest(software.amazon.awssdk.services.s3.model.ListObjectsRequest) StsException(software.amazon.awssdk.services.sts.model.StsException) AssumeRoleResponse(software.amazon.awssdk.services.sts.model.AssumeRoleResponse) Region(software.amazon.awssdk.regions.Region) ListObjectsResponse(software.amazon.awssdk.services.s3.model.ListObjectsResponse) S3Object(software.amazon.awssdk.services.s3.model.S3Object) S3Client(software.amazon.awssdk.services.s3.S3Client) AwsSessionCredentials(software.amazon.awssdk.auth.credentials.AwsSessionCredentials) Credentials(software.amazon.awssdk.services.sts.model.Credentials)

Example 22 with ListObjectsRequest

use of software.amazon.awssdk.services.s3.model.ListObjectsRequest in project aws-doc-sdk-examples by awsdocs.

the class MakingRequests method main.

public static void main(String[] args) throws IOException {
    Regions clientRegion = Regions.DEFAULT_REGION;
    String bucketName = "*** Bucket name ***";
    try {
        AmazonS3 s3Client = AmazonS3ClientBuilder.standard().withCredentials(new ProfileCredentialsProvider()).withRegion(clientRegion).build();
        // Get a list of objects in the bucket, two at a time, and
        // print the name and size of each object.
        ListObjectsRequest listRequest = new ListObjectsRequest().withBucketName(bucketName).withMaxKeys(2);
        ObjectListing objects = s3Client.listObjects(listRequest);
        while (true) {
            List<S3ObjectSummary> summaries = objects.getObjectSummaries();
            for (S3ObjectSummary summary : summaries) {
                System.out.printf("Object \"%s\" retrieved with size %d\n", summary.getKey(), summary.getSize());
            }
            if (objects.isTruncated()) {
                objects = s3Client.listNextBatchOfObjects(objects);
            } else {
                break;
            }
        }
    } catch (AmazonServiceException e) {
        // The call was transmitted successfully, but Amazon S3 couldn't process
        // it, so it returned an error response.
        e.printStackTrace();
    } catch (SdkClientException e) {
        // Amazon S3 couldn't be contacted for a response, or the client
        // couldn't parse the response from Amazon S3.
        e.printStackTrace();
    }
}
Also used : AmazonS3(com.amazonaws.services.s3.AmazonS3) ListObjectsRequest(com.amazonaws.services.s3.model.ListObjectsRequest) SdkClientException(com.amazonaws.SdkClientException) AmazonServiceException(com.amazonaws.AmazonServiceException) ProfileCredentialsProvider(com.amazonaws.auth.profile.ProfileCredentialsProvider) ObjectListing(com.amazonaws.services.s3.model.ObjectListing) Regions(com.amazonaws.regions.Regions) S3ObjectSummary(com.amazonaws.services.s3.model.S3ObjectSummary)

Example 23 with ListObjectsRequest

use of software.amazon.awssdk.services.s3.model.ListObjectsRequest in project XRTB by benmfaul.

the class Configuration method initialize.

/**
 * Initialize the system from the JSON or Aerospike configuration file.
 *
 * @param path String - The file name containing the Java Bean Shell code.
 * @param shard Stromg. The shard name
 * @param port int. The port the web access listens on
 * @param sslPort  int. The port the SSL listens on.
 * @throws Exception
 *             on file errors.
 */
public void initialize(String path, String shard, int port, int sslPort) throws Exception {
    this.fileName = path;
    /**
     ****************************
     * System Name
     ****************************
     */
    this.shard = shard;
    this.port = port;
    this.sslPort = sslPort;
    java.net.InetAddress localMachine = null;
    String useName = null;
    try {
        localMachine = java.net.InetAddress.getLocalHost();
        ipAddress = localMachine.getHostAddress();
        useName = localMachine.getHostName();
    } catch (Exception error) {
        useName = getIpAddress();
    }
    if (shard == null || shard.length() == 0)
        instanceName = useName + ":" + port;
    else
        instanceName = shard + ":" + useName + ":" + port;
    /**
     * Set up tem p files
     */
    // create the temp
    Files.createDirectories(Paths.get("www/temp"));
    // directory in www so
    // preview campaign will
    // work
    /**
     *******************************************
     * USE ZOOKEEPER, AEROSPIKE OR FILE CONFIG
     ********************************************
     */
    String str = null;
    if (path.startsWith("zookeeper")) {
        String[] parts = path.split(":");
        logger.info("Zookeeper: {}", "" + parts);
        zk = new ZkConnect(parts[1]);
        zk.join(parts[2], "bidders", instanceName);
        str = zk.readConfig(parts[2] + "/bidders");
    } else if (path.startsWith("aerospike")) {
        String[] parts = path.split(":");
        logger.info("Zookeeper: {}", "" + parts);
        ;
        String aerospike = parts[1];
        String configKey = parts[2];
        AerospikeHandler spike = AerospikeHandler.getInstance(aerospike, 3000, 300);
        redisson = new RedissonClient(spike);
        Database.getInstance(redisson);
        str = redisson.get(configKey);
        if (str == null) {
            throw new Exception("Aerospike configuration at " + path + " not available.");
        }
        logger.info("Zookeeper: {}", str);
    } else {
        byte[] encoded = Files.readAllBytes(Paths.get(path));
        str = Charset.defaultCharset().decode(ByteBuffer.wrap(encoded)).toString();
        str = Configuration.substitute(str);
        System.out.println(str);
    }
    Map<?, ?> m = DbTools.mapper.readValue(str, Map.class);
    /**
     ****************************************************************************
     */
    seats = new HashMap<String, String>();
    if (m.get("lists") != null) {
        filesList = (List) m.get("lists");
        initializeLookingGlass(filesList);
    }
    if (m.get("s3") != null) {
        Map<String, String> ms3 = (Map) m.get("s3");
        String accessKey = ms3.get("access_key_id");
        String secretAccessKey = ms3.get("secret_access_key");
        String region = ms3.get("region");
        s3_bucket = ms3.get("bucket");
        s3 = new AmazonS3Client(new BasicAWSCredentials(accessKey, secretAccessKey));
        ObjectListing listing = s3.listObjects(new ListObjectsRequest().withBucketName(s3_bucket));
        try {
            processDirectory(s3, listing, s3_bucket);
        } catch (Exception error) {
            System.err.println("ERROR IN AWS LISTING: " + error.toString());
        }
    }
    if (m.get("ssl") != null) {
        Map x = (Map) m.get("ssl");
        ssl = new SSL();
        ssl.setKeyManagerPassword = (String) x.get("setKeyManagerPassword");
        ssl.setKeyStorePassword = (String) x.get("setKeyStorePassword");
        ssl.setKeyStorePath = (String) x.get("setKeyStorePath");
    }
    /**
     * Create the seats id map, and create the bin and win handler classes
     * for each exchange
     */
    seatsList = (List<Map>) m.get("seats");
    for (int i = 0; i < seatsList.size(); i++) {
        Map x = seatsList.get(i);
        String seatId = (String) x.get("id");
        String className = (String) x.get("bid");
        int k = className.indexOf("=");
        String[] parts = new String[2];
        String uri = className.substring(0, k);
        className = className.substring(k + 1);
        String[] options = null;
        /**
         * set up any options on the class string
         */
        if (className.contains("&")) {
            parts = className.split("&");
            className = parts[0].trim();
            options = parts[1].split(",");
            for (int ind = 0; ind < options.length; ind++) {
                options[ind] = options[ind].trim();
            }
        }
        String[] tags = uri.split("/");
        String exchange = tags[tags.length - 1];
        String name = (String) x.get("name");
        if (name == null)
            name = exchange;
        String id = (String) x.get("id");
        seats.put(name, id);
        try {
            Class<?> c = Class.forName(className);
            BidRequest br = (BidRequest) c.newInstance();
            if (br == null) {
                throw new Exception("Could not make new instance of: " + className);
            }
            Map extension = (Map) x.get("extension");
            if (x != null)
                br.handleConfigExtensions(extension);
            /**
             * Handle generic-ized exchanges
             */
            if (className.contains("Generic")) {
                br.setExchange(exchange);
                br.usesEncodedAdm = true;
            }
            RTBServer.exchanges.put(uri, br);
            if (parts[0] != null) {
                for (int ind = 1; ind < parts.length; ind++) {
                    String option = parts[ind];
                    String[] tuples = option.split("=");
                    switch(tuples[0]) {
                        case "usesEncodedAdm":
                            br.usesEncodedAdm = true;
                            break;
                        case "!usesEncodedAdm":
                            br.usesEncodedAdm = false;
                            break;
                        case "rlog":
                            Double rlog = Double.parseDouble(tuples[1]);
                            ExchangeLogLevel.getInstance().setExchangeLogLevel(name, rlog.intValue());
                            break;
                        case "useStrings":
                            break;
                        case "!useStrings":
                            break;
                        case "!usesPiggyBackWins":
                            break;
                        case "usesPiggyBackWins":
                            BidRequest.setUsesPiggyBackWins(name);
                            break;
                        default:
                            System.err.println("Unknown request: " + tuples[0] + " in definition of " + className);
                    }
                }
            }
            /**
             * Appnexus requires additional support for ready, pixel and
             * click
             */
            if (className.contains("Appnexus")) {
                RTBServer.exchanges.put(uri + "/ready", new Appnexus(Appnexus.READY));
                RTBServer.exchanges.put(uri + "/pixel", new Appnexus(Appnexus.PIXEL));
                RTBServer.exchanges.put(uri + "/click", new Appnexus(Appnexus.CLICK));
                RTBServer.exchanges.put(uri + "/delivered", new Appnexus(Appnexus.DELIVERED));
                Appnexus.seatId = seatId;
            }
        } catch (Exception error) {
            System.err.println("Error configuring exchange: " + name + ", error = ");
            throw error;
        }
    }
    /**
     * Create forensiq
     */
    Map fraud = (Map) m.get("fraud");
    if (fraud != null) {
        if (m.get("forensiq") != null) {
            logger.info("*** Fraud detection is set to Forensiq");
            Map f = (Map) m.get("forensiq");
            String ck = (String) f.get("ck");
            Integer x = (Integer) f.get("threshhold");
            if (!(x == 0 || ck == null || ck.equals("none"))) {
                ForensiqClient fx = ForensiqClient.build(ck);
                if (fraud.get("endpoint") != null) {
                    fx.endpoint = (String) fraud.get("endpoint");
                }
                if (fraud.get("bidOnError") != null) {
                    fx.bidOnError = (Boolean) fraud.get("bidOnError");
                }
                if (f.get("connections") != null)
                    ForensiqClient.getInstance().connections = (int) (Integer) fraud.get("connections");
                forensiq = fx;
            }
        } else {
            logger.info("*** Fraud detection is set to MMDB");
            String db = (String) fraud.get("db");
            if (db == null) {
                throw new Exception("No fraud db specified for MMDB");
            }
            MMDBClient fy;
            try {
                fy = MMDBClient.build(db);
            } catch (Error error) {
                throw error;
            }
            if (fraud.get("bidOnError") != null) {
                fy.bidOnError = (Boolean) fraud.get("bidOnError");
            }
            if (fraud.get("watchlist") != null) {
                fy.setWatchlist((List<String>) fraud.get("watchlist"));
            }
            forensiq = fy;
        }
    } else {
        logger.info("*** NO Fraud detection");
    }
    /**
     * Deal with the app object
     */
    m = (Map) m.get("app");
    password = (String) m.get("password");
    if (m.get("threads") != null) {
        RTBServer.threads = (Integer) m.get("threads");
    }
    if (m.get("multibid") != null) {
        multibid = (Boolean) m.get("multibid");
    }
    if (m.get("adminPort") != null) {
        adminPort = (Integer) m.get("adminPort");
    }
    if (m.get("adminSSL") != null) {
        adminSSL = (Boolean) m.get("adminSSL");
    }
    String strategy = (String) m.get("strategy");
    if (strategy != null && strategy.equals("heuristic"))
        RTBServer.strategy = STRATEGY_HEURISTIC;
    else
        RTBServer.strategy = STRATEGY_MAX_CONNECTIONS;
    verbosity = (Map) m.get("verbosity");
    if (verbosity != null) {
        logLevel = (Integer) verbosity.get("level");
        printNoBidReason = (Boolean) verbosity.get("nobid-reason");
    }
    template = (Map) m.get("template");
    if (template == null) {
        throw new Exception("No template defined");
    }
    encodeTemplates();
    encodeTemplateStubs();
    geotags = (Map) m.get("geotags");
    if (geotags != null) {
        String states = (String) geotags.get("states");
        String codes = (String) geotags.get("zipcodes");
        geoTagger.initTags(states, codes);
    }
    Boolean bValue = false;
    bValue = (Boolean) m.get("stopped");
    if (bValue != null && bValue == true) {
        RTBServer.stopped = true;
        pauseOnStart = true;
    }
    Map redis = (Map) m.get("redis");
    if (redis != null) {
        Integer rsize = (Integer) redis.get("pool");
        if (rsize == null)
            rsize = 64;
        String host = (String) redis.get("host");
        Integer rport = (Integer) redis.get("port");
        if (rport == null)
            rport = 6379;
        // JedisPoolConfig poolConfig = new JedisPoolConfig();;
        // configJedis.setMaxTotal(rsize);
        // configJedis.setMaxWaitMillis(10);
        // poolConfig.setMaxIdle(4000);
        // Tests whether connections are dead during idle periods
        // poolConfig.setTestWhileIdle(true);
        // poolConfig.setMaxTotal(4000);
        // poolConfig.setMaxWaitMillis(30);
        // jedisPool = new JedisPool(poolConfig,host,rport);
        MyJedisPool.host = host;
        MyJedisPool.port = rport;
        jedisPool = new MyJedisPool(1000, 1000, 5);
        logger.info("*** JEDISPOOL = {}/{}/{} {}", jedisPool, host, rport, rsize);
    }
    Map zeromq = (Map) m.get("zeromq");
    if (zeromq == null) {
        throw new Exception("Zeromq is mot configured!");
    }
    String value = null;
    Double dValue = 0.0;
    bValue = false;
    Map r = (Map) m.get("aerospike");
    if (r != null) {
        if ((value = (String) r.get("host")) != null)
            cacheHost = value;
        if (r.get("port") != null)
            cachePort = (Integer) r.get("port");
        if (r.get("maxconns") != null)
            maxconns = (Integer) r.get("maxconns");
        AerospikeHandler.getInstance(cacheHost, cachePort, maxconns);
        redisson = new RedissonClient(AerospikeHandler.getInstance());
        Database.getInstance(redisson);
        logger.info("*** Aerospike connection set to: {}. port: {}. connections: {}, handlers: {}", cacheHost, cachePort, maxconns, AerospikeHandler.getInstance().getCount());
        String key = (String) m.get("deadmanswitch");
        if (key != null) {
            deadmanSwitch = new DeadmanSwitch(redisson, key);
        }
    } else {
        redisson = new RedissonClient();
        Database db = Database.getInstance(redisson);
        readDatabaseIntoCache("database.json");
        readBlackListIntoCache("blacklist.json");
    }
    /**
     * Zeromq
     */
    if ((value = (String) zeromq.get("bidchannel")) != null)
        BIDS_CHANNEL = value;
    if ((value = (String) zeromq.get("nobidchannel")) != null)
        NOBIDS_CHANNEL = value;
    if ((value = (String) zeromq.get("winchannel")) != null)
        WINS_CHANNEL = value;
    if ((value = (String) zeromq.get("requests")) != null)
        REQUEST_CHANNEL = value;
    if ((value = (String) zeromq.get("unilogger")) != null)
        UNILOGGER_CHANNEL = value;
    if ((value = (String) zeromq.get("clicks")) != null)
        CLICKS_CHANNEL = value;
    if ((value = (String) zeromq.get("fraud")) != null)
        FORENSIQ_CHANNEL = value;
    if ((value = (String) zeromq.get("responses")) != null)
        RESPONSES = value;
    if ((value = (String) zeromq.get("status")) != null)
        PERF_CHANNEL = value;
    if ((value = (String) zeromq.get("reasons")) != null)
        REASONS_CHANNEL = value;
    Map xx = (Map) zeromq.get("subscribers");
    List<String> list = (List) xx.get("hosts");
    commandsPort = (String) xx.get("commands");
    for (String host : list) {
        String address = "tcp://" + host + ":" + commandsPort + "&commands";
        commandAddresses.add(address);
    }
    if (zeromq.get("requeststrategy") != null) {
        Object obj = zeromq.get("requeststrategy");
        if (obj instanceof String) {
            strategy = (String) zeromq.get("requeststrategy");
            if (strategy.equalsIgnoreCase("all") || strategy.equalsIgnoreCase("requests"))
                requstLogStrategy = REQUEST_STRATEGY_ALL;
            if (strategy.equalsIgnoreCase("bids"))
                requstLogStrategy = REQUEST_STRATEGY_BIDS;
            if (strategy.equalsIgnoreCase("WINS"))
                requstLogStrategy = REQUEST_STRATEGY_WINS;
        } else {
            if (obj instanceof Integer) {
                int level = (Integer) obj;
                ExchangeLogLevel.getInstance().setStdLevel(level);
            } else if (obj instanceof Double) {
                Double perc = (Double) obj;
                ExchangeLogLevel.getInstance().setStdLevel(perc.intValue());
            }
        }
    }
    /**
     *****************************************************************
     */
    campaignsList.clear();
    pixelTrackingUrl = (String) m.get("pixel-tracking-url");
    winUrl = (String) m.get("winurl");
    redirectUrl = (String) m.get("redirect-url");
    if (m.get("ttl") != null) {
        ttl = (Integer) m.get("ttl");
    }
    initialLoadlist = (List<Map>) m.get("campaigns");
    for (Map<String, String> camp : initialLoadlist) {
        if (camp.get("id") != null) {
            addCampaign(camp.get("name"), camp.get("id"));
        } else {
            logger.error("Configuration, *** ERRORS DETECTED IN INITIAL LOAD OF CAMPAIGNS *** ");
        }
    }
    if (cacheHost == null)
        logger.warn("*** NO AEROSPIKE CONFIGURED, USING CACH2K INSTEAD *** ");
    if (winUrl.contains("localhost")) {
        logger.warn("Configuration", "*** WIN URL IS SET TO LOCALHOST, NO REMOTE ACCESS WILL WORK FOR WINS ***");
    }
}
Also used : MMDBClient(com.xrtb.fraud.MMDBClient) ObjectListing(com.amazonaws.services.s3.model.ObjectListing) BidRequest(com.xrtb.pojo.BidRequest) ListObjectsRequest(com.amazonaws.services.s3.model.ListObjectsRequest) DeadmanSwitch(com.xrtb.bidder.DeadmanSwitch) Database(com.xrtb.db.Database) List(java.util.List) ArrayList(java.util.ArrayList) Appnexus(com.xrtb.exchanges.appnexus.Appnexus) BasicAWSCredentials(com.amazonaws.auth.BasicAWSCredentials) AmazonS3Client(com.amazonaws.services.s3.AmazonS3Client) RedissonClient(com.aerospike.redisson.RedissonClient) AerospikeHandler(com.aerospike.redisson.AerospikeHandler) S3Object(com.amazonaws.services.s3.model.S3Object) DataBaseObject(com.xrtb.db.DataBaseObject) Map(java.util.Map) NavMap(com.xrtb.blocks.NavMap) HashMap(java.util.HashMap) ForensiqClient(com.xrtb.fraud.ForensiqClient)

Example 24 with ListObjectsRequest

use of software.amazon.awssdk.services.s3.model.ListObjectsRequest in project exhibitor by soabase.

the class S3PseudoLock method getFileNames.

@Override
protected List<String> getFileNames(String lockPrefix) throws Exception {
    ListObjectsRequest request = new ListObjectsRequest();
    request.setBucketName(bucket);
    request.setPrefix(lockPrefix);
    ObjectListing objectListing = client.listObjects(request);
    return Lists.transform(objectListing.getObjectSummaries(), new Function<S3ObjectSummary, String>() {

        @Override
        public String apply(S3ObjectSummary summary) {
            return summary.getKey();
        }
    });
}
Also used : ListObjectsRequest(com.amazonaws.services.s3.model.ListObjectsRequest) ObjectListing(com.amazonaws.services.s3.model.ObjectListing) S3ObjectSummary(com.amazonaws.services.s3.model.S3ObjectSummary)

Example 25 with ListObjectsRequest

use of software.amazon.awssdk.services.s3.model.ListObjectsRequest in project crate by crate.

the class S3BlobContainer method delete.

@Override
public void delete() throws IOException {
    try (AmazonS3Reference clientReference = blobStore.clientReference()) {
        ObjectListing prevListing = null;
        while (true) {
            ObjectListing list;
            if (prevListing != null) {
                final ObjectListing finalPrevListing = prevListing;
                list = clientReference.client().listNextBatchOfObjects(finalPrevListing);
            } else {
                final ListObjectsRequest listObjectsRequest = new ListObjectsRequest();
                listObjectsRequest.setBucketName(blobStore.bucket());
                listObjectsRequest.setPrefix(keyPath);
                list = clientReference.client().listObjects(listObjectsRequest);
            }
            final List<String> blobsToDelete = list.getObjectSummaries().stream().map(S3ObjectSummary::getKey).collect(Collectors.toList());
            if (list.isTruncated()) {
                doDeleteBlobs(blobsToDelete, false);
                prevListing = list;
            } else {
                final List<String> lastBlobsToDelete = new ArrayList<>(blobsToDelete);
                lastBlobsToDelete.add(keyPath);
                doDeleteBlobs(lastBlobsToDelete, false);
                break;
            }
        }
    } catch (final AmazonClientException e) {
        throw new IOException("Exception when deleting blob container [" + keyPath + "]", e);
    }
}
Also used : ListObjectsRequest(com.amazonaws.services.s3.model.ListObjectsRequest) AmazonClientException(com.amazonaws.AmazonClientException) ArrayList(java.util.ArrayList) ObjectListing(com.amazonaws.services.s3.model.ObjectListing) IOException(java.io.IOException)

Aggregations

ListObjectsRequest (com.amazonaws.services.s3.model.ListObjectsRequest)48 ObjectListing (com.amazonaws.services.s3.model.ObjectListing)46 S3ObjectSummary (com.amazonaws.services.s3.model.S3ObjectSummary)32 ArrayList (java.util.ArrayList)23 AmazonClientException (com.amazonaws.AmazonClientException)11 IOException (java.io.IOException)9 Path (org.apache.hadoop.fs.Path)9 HashMap (java.util.HashMap)8 LocatedFileStatus (org.apache.hadoop.fs.LocatedFileStatus)8 DeleteObjectsRequest (com.amazonaws.services.s3.model.DeleteObjectsRequest)6 FileStatus (org.apache.hadoop.fs.FileStatus)6 ListObjectsRequest (software.amazon.awssdk.services.s3.model.ListObjectsRequest)6 ListObjectsResponse (software.amazon.awssdk.services.s3.model.ListObjectsResponse)6 Date (java.util.Date)5 Test (org.junit.Test)5 S3Object (software.amazon.awssdk.services.s3.model.S3Object)5 StocatorPath (com.ibm.stocator.fs.common.StocatorPath)4 FileNotFoundException (java.io.FileNotFoundException)4 S3Exception (software.amazon.awssdk.services.s3.model.S3Exception)4 AmazonServiceException (com.amazonaws.AmazonServiceException)3