Example usage for com.amazonaws.services.glacier.model DescribeVaultOutput getSizeInBytes

List of usage examples for com.amazonaws.services.glacier.model DescribeVaultOutput getSizeInBytes

Introduction

In this page you can find the example usage for com.amazonaws.services.glacier.model DescribeVaultOutput getSizeInBytes.

Prototype


public Long getSizeInBytes() 

Source Link

Document

Total size, in bytes, of the archives in the vault as of the last inventory date.

Usage

From source file:com.vrane.metaGlacier.gui.vaults.VaultListPanel.java

void init(final HashMap<String, String> lastcount) {
    JTextField jt;//from w  ww  .j a v a2 s  . c  om
    short count = 0;
    byte rows = 1;

    if (list.size() > 0) {
        add(new JLabel());
        add(new HeaderJT("Archives"));
        add(new HeaderJT("Last count"));
        add(new HeaderJT("Size"));
        add(new JLabel());
    }
    for (final DescribeVaultOutput dvo : list) {
        count++;
        if (count < minimum || count > maximum) {
            continue;
        }
        rows++;
        final String vault_name = dvo.getVaultName();
        final JLabel la = GlacierFrame.makeLabel(" " + vault_name + " ");
        add(la);
        String buttonString;
        long numArchives = dvo.getNumberOfArchives();
        if (numArchives > 0) {
            buttonString = "Inventory";
            la.setBorder(BorderFactory.createRaisedBevelBorder());
            la.addMouseListener(new MouseClickListener() {

                @Override
                public void mouseClicked(MouseEvent me) {
                    new LaunchArchiveManager(vault_name).execute();
                }
            });
        } else {
            buttonString = "Delete";
        }
        jt = new JTextField(5);
        jt.setText(numArchives + "");
        jt.setHorizontalAlignment(JTextField.RIGHT);
        jt.setEditable(false);
        add(jt);
        jt = new JTextField(5);
        String last_count_text = null;
        last_count_text = (String) (lastcount.containsKey(vault_name) ? lastcount.get(vault_name)
                : "" + numArchives);
        jt.setText(last_count_text);

        jt.setHorizontalAlignment(JTextField.RIGHT);
        jt.setEditable(false);
        add(jt);
        jt = new ByteTextField(dvo.getSizeInBytes());
        add(jt);
        final JButton vaultButton = new JButton(buttonString);
        vaultButton.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                if (!vaultButton.isEnabled()) {
                    return;
                }
                vaultButton.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
                vaultButton.validate();
                if (vaultButton.getText().equals("Delete")) {
                    vaultButton.setEnabled(false);
                    try {
                        if (new Vault(vault_name).delete()) {
                            vaultButton.setText("deleted");
                        } else {
                            vaultButton.setEnabled(true);
                        }
                    } catch (Exception e) {
                        LGR.log(Level.SEVERE, null, e);
                        JOptionPane.showMessageDialog(null,
                                "Failed to delete vault. An archive added recently?");
                        vaultButton.setEnabled(true);
                    }
                } else {
                    new VaultInventoryJobDialog(vault_name);
                }
                vaultButton.setCursor(Cursor.getDefaultCursor());
            }
        });
        add(vaultButton);
    }
    init(rows, (short) 5);
}

From source file:com.vrane.metaGlacier.gui.vaults.VaultManageDialog.java

/**
 * Sole constructor.//from w ww .ja  va 2s . c om
 *
 * @param list is a list of AWS objects containing vault list
 * @param deltaAWS time in ms taken to get this list from AWS
 * @param deltaAPI time in ms taken to get this list from metadata API
 * @param last_count a mapping of vault to the number of archives in it.
 */
public VaultManageDialog(final List<DescribeVaultOutput> list, final long deltaAWS, final long deltaAPI,
        final HashMap last_count) {
    super(Main.frame, true);

    JPanel createPanel = new JPanel(new GridLayout(2, 1));
    final Border createPanelBorder = BorderFactory.createEtchedBorder(EtchedBorder.LOWERED);
    final JTextField createJt = new JTextField();
    final JButton next = new JButton("next");
    final JPanel statPanel2 = new JPanel(new GridLayout(0, 2));

    listSize = (short) list.size();

    //<editor-fold defaultstate="collapsed" desc="create vault Panel">

    createPanel.setBorder(BorderFactory.createTitledBorder(createPanelBorder, "create vault"));
    createPanel.add(new JLabel(GlacierFrame.getAWSRegion()));
    createPanel.add(createJt);
    createJt.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent ae) {
            final String n = createJt.getText();
            Vault v = new Vault(n);

            v.describe();
            if (v.exists()) {
                JOptionPane.showMessageDialog(null, "Vault exists already");
                return;
            }
            if (v.vaultNameIsBad()) {
                JOptionPane.showMessageDialog(null, "Bad vault name");
                return;
            }
            if (v.create()) {
                VaultManageDialog.this.dispose();
                JOptionPane.showMessageDialog(null, "Vault successfully created");
            } else {
                JOptionPane.showMessageDialog(null, "Failed to create");
            }
        }
    });
    add(createPanel, BorderLayout.NORTH);
    //</editor-fold>

    //<editor-fold defaultstate="collapsed" desc="stats panel">
    if (list != null && !list.isEmpty()) {
        final JPanel statsPanel = new JPanel(new GridLayout(1, 3));
        statsPanel.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
        long numArchives = 0;
        long totalSize = 0;

        for (final DescribeVaultOutput dvo : list) {
            numArchives += dvo.getNumberOfArchives();
            totalSize += dvo.getSizeInBytes();
        }
        JTextField jt = new JTextField(list.size() + " vaults");
        jt.setEditable(false);
        statsPanel.add(jt);
        jt = new JTextField(numArchives + " archives");
        statsPanel.add(jt);
        jt.setEditable(false);
        jt = new JTextField("Size: " + HumanBytes.convert(totalSize));
        statsPanel.add(jt);
        jt.setEditable(false);
        final JPanel emptyPanel = new JPanel();
        emptyPanel.setBorder(BorderFactory.createEmptyBorder(4, 3, 4, 3));
        emptyPanel.add(statsPanel);
        add(emptyPanel, BorderLayout.CENTER);
    }
    //</editor-fold>

    listContainer = new JPanel(new BorderLayout());

    //<editor-fold defaultstate="collapsed" desc="list panel">
    listPanel = new VaultListPanel().withList(list);
    listPanel.setMin(min);
    listPanel.setMax(max);
    listPanel.init(last_count);

    if (listSize > pageSize) {
        JPanel pagesPanel = new JPanel(new GridLayout(1, 2));
        final JButton prev = new JButton("previous");

        listContainer.add(pagesPanel, BorderLayout.NORTH);
        prev.setEnabled(false);
        pagesPanel.add(prev);
        prev.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                if (!prev.isEnabled()) {
                    return;
                }
                prev.setEnabled(true);
                min -= pageSize;
                short minToSet = min;
                if (min < 2) {
                    minToSet = 1;
                    prev.setEnabled(false);
                }
                max -= pageSize;
                if (max < listSize) {
                    next.setEnabled(true);
                }
                listContainer.remove(listPanel);
                listPanel = new VaultListPanel().withList(list);
                listPanel.setMax(max);
                listPanel.setMin(minToSet);
                listPanel.init(last_count);
                listContainer.add(listPanel, BorderLayout.CENTER);
                VaultManageDialog.this.pack();
            }
        });

        pagesPanel.add(next);
        next.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                if (!next.isEnabled() || listSize < max) {
                    return;
                }
                max += pageSize;
                short maxToSet = max;
                if (max >= listSize) {
                    maxToSet = listSize;
                    next.setEnabled(false);
                }
                prev.setEnabled(true);
                min += pageSize;
                listContainer.remove(listPanel);
                listPanel = new VaultListPanel().withList(list);
                listPanel.setMax(maxToSet);
                listPanel.setMin(min);

                listPanel.init(last_count);
                listContainer.add(listPanel, BorderLayout.CENTER);
                VaultManageDialog.this.pack();
            }
        });
    }

    listContainer.add(listPanel, BorderLayout.CENTER);
    //</editor-fold>

    //<editor-fold defaultstate="collapsed" desc="bottom stats panel">
    statPanel2.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
    JTextLabel dummy = new JTextLabel("AWS time/ms :" + deltaAWS);
    dummy.setToolTipText("time to get this list from AWS");
    statPanel2.add(dummy);
    statPanel2
            .add(new StatsLabel("AWS calls :" + GlacierFrame.getAWSCalls(), GlacierFrame.getAWSapiLastReset()));
    if (deltaAPI > 0) {
        dummy = new JTextLabel("Metadata time/ms :" + deltaAPI);
        dummy.setToolTipText("time to get this list from metadata API");
        statPanel2.add(dummy);
        statPanel2.add(new StatsLabel("Metadata calls :" + GlacierMetadata.getAPIcounter(),
                GlacierFrame.getAPILastReset()));
    }
    listContainer.add(statPanel2, BorderLayout.SOUTH);
    //</editor-fold>

    add(listContainer, BorderLayout.SOUTH);
    pack();
    setLocationRelativeTo(Main.frame);
    setResizable(false);
    setModalityType(JDialog.ModalityType.DOCUMENT_MODAL);
    setVisible(true);
}

From source file:com.vrane.metaGlacier.gui.VSplash.java

private void get_data() {
    say("Getting vault list from AWS");
    final long beginning = System.currentTimeMillis();
    List<DescribeVaultOutput> list = null;
    HashMap<String, String> lastCounts = new HashMap();
    long afterMetadata = 0;
    boolean success = false;

    try {/*from  w w w.j  a  v  a 2s  . c  o  m*/
        list = new AllVaults().list();
    } catch (Exception ex) {
        LGR.log(Level.SEVERE, null, ex);
        dispose();
        JOptionPane.showMessageDialog(null, "Error getting vaults.  Check your connection or AWS keys");
        return;
    }
    LGR.fine("Received vault list from AWS");
    final long afterAWS = System.currentTimeMillis();

    if (!GlacierFrame.haveMetadataProvider()) {
        success = true;
    } else if (list.size() > 0) {
        say("Syncing with metadata provider");
        VaultList vaultList = new VaultList(GlacierFrame.getAWSRegion());
        List<VaultRO> mvlList = new ArrayList();
        for (final DescribeVaultOutput dvo : list) {
            final VaultRO vro = new VaultRO(dvo.getVaultName(), dvo.getNumberOfArchives(),
                    dvo.getCreationDate(), dvo.getSizeInBytes());
            mvlList.add(vro);
        }
        vaultList.setList(mvlList);
        String error_string = null;
        try {
            success = vaultList.sync();
            afterMetadata = System.currentTimeMillis();
            lastCounts = vaultList.getLastArchiveCounts();
            if (!success) {
                LGR.info("failed to sync");
            }
        } catch (SDKException | APIException ex) {
            LGR.log(Level.SEVERE, null, ex);
        } catch (SignInException ex) {
            LGR.log(Level.SEVERE, null, ex);
            error_string = "Failed to sign-in to metadata account";
        }
        dispose();
        if (!success) {
            if (error_string == null) {
                error_string = "Error from metadata provider";
            }
            JOptionPane.showMessageDialog(this, error_string);
        }
    }
    dispose();
    if (!success) {
        return;
    }
    new VaultManageDialog(list, afterAWS - beginning, afterMetadata == 0 ? 0 : (afterMetadata - afterAWS),
            lastCounts);
}

From source file:englishcoffeedrinker.corpse.Glacier.java

License:Open Source License

public Glacier(AWSEndpoint endpoint, AWSCredentials credentials) {
    this.endpoint = endpoint;
    this.credentials = credentials;

    AmazonGlacierClient client = new AmazonGlacierClient(this.credentials);
    client.setEndpoint(this.endpoint.getServiceURI(AWSEndpoint.Service.GLACIER));

    vaults = new ArrayList<Vault>();
    size = 0L;//  w  w  w  .java  2 s  .co m

    String marker = null;
    do {
        ListVaultsRequest lv = new ListVaultsRequest().withMarker(marker).withLimit("1000");

        ListVaultsResult lvr = client.listVaults(lv);
        List<DescribeVaultOutput> vList = lvr.getVaultList();
        marker = lvr.getMarker();

        for (DescribeVaultOutput vault : vList) {
            vaults.add(new Vault(vault));

            if (vault.getSizeInBytes() != null)
                size += vault.getSizeInBytes();
        }

    } while (marker != null);
}

From source file:englishcoffeedrinker.corpse.Vault.java

License:Open Source License

/**
 * Creates a Vault instance from the description returned as part
 * of a ListVault command. Note that this won't contain a breakdown
 * of the archives contained with the vault as this information
 * isn't returned as part of a vault listing; you need to request
 * a vault inventory if you need to find out the details of each
 * archive in the vault./*from   ww w .j  av  a2  s  . co m*/
 * @param vault
 */
public Vault(DescribeVaultOutput vault) {
    this.arn = vault.getVaultARN();
    this.name = vault.getVaultName();
    this.creationDate = vault.getCreationDate();
    this.inventoryDate = vault.getLastInventoryDate();
    this.numArchives = vault.getNumberOfArchives();
    this.sizeInBytes = vault.getSizeInBytes();

    //a simple vault description doesn't contain the list
    //of archives, you have to request a vault inventory
    //to get the full list, which is why you should be
    //maintaining a local index of your glacier vaults
    archives = new ArrayList<Archive>();
}

From source file:nl.nekoconeko.glaciercmd.Entry.java

License:Open Source License

public static void main(String[] args) {
    CommandLine cli = Configuration.parseCli(ModeType.ROOT, args);

    if (cli.hasOption("config")) {
        Configuration.loadFile(cli.getOptionValue("config"));
    }//from w  w w .j a va2  s .com

    Configuration.load(cli);

    if (Configuration.getMode() == ModeType.HELP) {
        if (Configuration.hasHelpType()) {
            ConfigModes.printConfigModeHelp(Configuration.getHelpType());
        } else {
            ConfigModes.printConfigModeHelp(ModeType.ROOT);
        }
        System.exit(0);
    }

    if (Configuration.getMode() == ModeType.VERSION) {
        Formatter.printHeader();
        System.exit(0);
    }

    if (!Configuration.hasKey() || !Configuration.hasSecret() || !Configuration.hasRegion()) {
        Formatter.printErrorLine("Make sure key, secret and region are set!");
        System.exit(-1);
    }

    GlacierClient gc = new GlacierClient(Configuration.getKey(), Configuration.getSecret());
    gc.setEndpoint(Configuration.getRegion().getEndpoint());

    if (Configuration.getMode() == ModeType.LIST) {
        Configuration.load(ModeType.LIST, args);
        if (!Configuration.hasListType()) {
            Formatter.printErrorLine("Make sure you specify a list type!");
            System.exit(-1);
        }

        switch (Configuration.getListType()) {
        case VAULT:
            List<DescribeVaultOutput> vaults = gc.getVaults();
            for (DescribeVaultOutput vault : vaults) {
                Formatter.printInfoLine(String.format("[%s] %d items, %d bytes, %s last checked",
                        vault.getVaultName(), vault.getNumberOfArchives(), vault.getSizeInBytes(),
                        vault.getLastInventoryDate()));
            }
            break;
        case ARCHIVE:
            if (!Configuration.hasVault()) {
                Formatter.printErrorLine("A vault has to be specified to list archives");
                System.exit(-1);
            }
            DescribeVaultResult vault = gc.describeVault(Configuration.getVault());
            Formatter.printInfoLine(
                    String.format("[%s] %d items, %d bytes, %s last checked", vault.getVaultName(),
                            vault.getNumberOfArchives(), vault.getSizeInBytes(), vault.getLastInventoryDate()));
            break;
        default:
            Formatter.printErrorLine("Invalid list type selected");
            System.exit(-1);
        }
    } else if (Configuration.getMode() == ModeType.INITIATEINVENTORY) {
        Configuration.load(ModeType.INITIATEINVENTORY, args);

        Formatter.printInfoLine("Requesting an inventory from AWS Glacier...");
        Formatter.printInfoLine(String.format("Job has been created with id: %s",
                gc.initiateRetrieveVaultInventory(Configuration.getVault())));
    } else if (Configuration.getMode() == ModeType.GETINVENTORY) {
        Configuration.load(ModeType.GETINVENTORY, args);

        Formatter.printInfoLine(
                String.format("Retrieving inventory with id %s from AWS Glacier...", Configuration.getJobId()));
        VaultInventory inv = null;
        try {
            inv = gc.retrieveVaultInventoryJob(Configuration.getVault(), Configuration.getJobId());
        } catch (InterruptedException e) {
            e.printStackTrace();
            System.exit(-1);
        }

        Formatter.printInfoLine(String.format("Vault ARN: %s", inv.VaultARN));
        Formatter.printInfoLine(String.format("Last Inventory Date: %s", inv.InventoryDate.toString()));
        Formatter.printInfoLine(String.format("Vault contains %d archives:", inv.ArchiveList.size()));
        for (Archive arch : inv.ArchiveList) {
            StringBuilder a = new StringBuilder();
            a.append(String.format("Archive ID: %s\n", arch.ArchiveId));
            a.append(String.format("Archive Description: %s\n", arch.ArchiveDescription));
            a.append(String.format("Archive Size: %d bytes\n", arch.Size));
            a.append(String.format("Creation Date: %s\n", arch.CreationDate.toString()));
            a.append(String.format("SHA256 Hash: %s\n", arch.SHA256TreeHash));
            Formatter.printBorderedInfo(a.toString());
        }

    } else if (Configuration.getMode() == ModeType.UPLOAD) {
        Configuration.load(ModeType.UPLOAD, args);

        Formatter.printInfoLine(String.format("Uploading '%s' to vault '%s'", Configuration.getInputFile(),
                Configuration.getVault()));
        UploadResult res = gc.uploadFile(Configuration.getVault(), Configuration.getInputFile(),
                Configuration.getDescription());
        Formatter.printInfoLine(String.format("Upload completed, archive has ID: %s", res.getArchiveId()));
    } else if (Configuration.getMode() == ModeType.DOWNLOAD) {
        Configuration.load(ModeType.DOWNLOAD, args);

        Formatter.printInfoLine(String.format("Download '%s' from vault '%s', saving as '%s'",
                Configuration.getArchive(), Configuration.getVault(), Configuration.getOutputFile()));
        Formatter.printInfoLine("Note that this will take several hours, please be patient...");
        gc.downloadFile(Configuration.getVault(), Configuration.getArchive(), Configuration.getOutputFile());
        Formatter.printInfoLine("Download completed");

    } else if (Configuration.getMode() == ModeType.INITIATEDOWNLOAD) {
        Configuration.load(ModeType.INITIATEDOWNLOAD, args);
        Formatter.printInfoLine(String.format("Requesting download of archive '%s' from vault '%s'...",
                Configuration.getArchive(), Configuration.getVault()));
        Formatter.printInfoLine(String.format("Job has been created with id: %s",
                gc.initiateDownload(Configuration.getVault(), Configuration.getArchive())));
    } else if (Configuration.getMode() == ModeType.GETDOWNLOAD) {
        Configuration.load(ModeType.GETDOWNLOAD, args);
        Formatter.printInfoLine(
                String.format("Retrieving download with '%s' from AWS Glacier, and saving it to '%s'...",
                        Configuration.getJobId(), Configuration.getOutputFile()));
        try {
            gc.retrieveDownloadJob(Configuration.getVault(), Configuration.getJobId(),
                    Configuration.getOutputFile());
        } catch (InterruptedException e) {
            e.printStackTrace();
            System.exit(-1);
        }
        Formatter.printInfoLine("Download completed");
    } else if (Configuration.getMode() == ModeType.DELETEARCHIVE) {
        Configuration.load(ModeType.DELETEARCHIVE, args);
        Formatter.printInfoLine(String.format("Deleting archive with id '%s' from vault '%s'",
                Configuration.getArchive(), Configuration.getVault()));
        gc.deleteArchive(Configuration.getVault(), Configuration.getArchive());
    } else {
        Formatter.printErrorLine("WHA-HUH!?");
        System.exit(-1);
    }
}

From source file:opendap.aws.glacier.NoaaResourceIngester.java

License:Open Source License

public String describeVault(DescribeVaultOutput dvo) {
    StringBuilder sb = new StringBuilder();
    sb.append("================================================================================\n");
    sb.append("Found Vault: ").append(dvo.getVaultName()).append("\n");
    sb.append("    getCreationDateString(): ").append(dvo.getCreationDate()).append("\n");
    sb.append("    getLastInventoryDate(): ").append(dvo.getLastInventoryDate()).append("\n");
    sb.append("    getNumberOfArchives(): ").append(dvo.getNumberOfArchives()).append("\n");
    sb.append("    getSizeInBytes(): ").append(dvo.getSizeInBytes()).append("\n");
    sb.append("    getVaultARN(): ").append(dvo.getVaultARN()).append("\n");
    sb.append("    toString(): ").append(dvo.toString()).append("\n");
    sb.append("    toString(): ").append(dvo.getVaultName()).append("\n");
    return sb.toString();
}