Example usage for com.google.common.collect ImmutableList.Builder builder

List of usage examples for com.google.common.collect ImmutableList.Builder builder

Introduction

In this page you can find the example usage for com.google.common.collect ImmutableList.Builder builder.

Prototype

public static <E> Builder<E> builder() 

Source Link

Usage

From source file:org.jclouds.azurecompute.arm.compute.strategy.CreateResourcesThenCreateNodes.java

@VisibleForTesting
void normalizeNetworkOptions(AzureTemplateOptions options) {
    if (!options.getNetworks().isEmpty() && !options.getIpOptions().isEmpty()) {
        throw new IllegalArgumentException("The options.networks and options.ipOptions are exclusive");
    }/*www .  ja v  a  2  s.c o  m*/

    if (!options.getNetworks().isEmpty()) {
        // The portable interface allows to configure network IDs (subnet IDs),
        // but we don't know the type of the IP configurations to be applied
        // when attaching nodes to those networks. We'll assume private IPs
        // with Dynamic allocation and new public ip address allocated.
        ImmutableList.Builder<IpOptions> ipOptions = ImmutableList.builder();
        for (String subnetId : options.getNetworks()) {
            ipOptions.add(IpOptions.builder().subnet(subnetId).allocateNewPublicIp(true).build());
        }
        options.ipOptions(ipOptions.build());
    }

    if (!options.getIpOptions().isEmpty()) {
        // Eagerly validate that all configured subnets exist.
        for (IpOptions ipConfig : options.getIpOptions()) {
            if (ipConfig.allocateNewPublicIp() && ipConfig.publicIpId() != null) {
                throw new IllegalArgumentException("The allocateNewPublicIps and publicIpId are exclusive");
            }

            String resourceGroup = extractResourceGroup(ipConfig.subnet());
            String networkName = extractVirtualNetwork(ipConfig.subnet());
            String subnetName = extractName(ipConfig.subnet());
            Subnet subnet = api.getSubnetApi(resourceGroup, networkName).get(subnetName);
            checkState(subnet != null, "Configured subnet %s does not exist", ipConfig.subnet());

            if (ipConfig.publicIpId() != null) {
                PublicIPAddress publicIp = api
                        .getPublicIPAddressApi(extractResourceGroup(ipConfig.publicIpId()))
                        .get(extractName(ipConfig.publicIpId()));
                checkState(publicIp != null, "Configured public ip %s does not exist", ipConfig.publicIpId());
            }
        }
    }
}

From source file:org.apache.james.mailbox.store.mail.MessageUtils.java

public MessageChangedFlags updateFlags(Mailbox mailbox, FlagsUpdateCalculator flagsUpdateCalculator,
        Iterator<MailboxMessage> messages) throws MailboxException {
    ImmutableList.Builder<UpdatedFlags> updatedFlags = ImmutableList.builder();
    ImmutableList.Builder<MailboxMessage> changedFlags = ImmutableList.builder();

    long modSeq = nextModSeq(mailbox);

    while (messages.hasNext()) {
        MailboxMessage member = messages.next();
        Flags originalFlags = member.createFlags();
        member.setFlags(flagsUpdateCalculator.buildNewFlags(originalFlags));
        Flags newFlags = member.createFlags();
        if (UpdatedFlags.flagsChanged(originalFlags, newFlags)) {
            member.setModSeq(modSeq);//  www. jav  a  2  s  .  co m
            changedFlags.add(member);
        }

        updatedFlags.add(UpdatedFlags.builder().uid(member.getUid()).modSeq(member.getModSeq())
                .newFlags(newFlags).oldFlags(originalFlags).build());
    }

    return new MessageChangedFlags(updatedFlags.build().iterator(), changedFlags.build());
}