All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.microsoft.azure.servicebus.primitives.IteratorUtil Maven / Gradle / Ivy

The newest version!
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

package com.microsoft.azure.servicebus.primitives;

import java.util.Iterator;

final class IteratorUtil {
    private IteratorUtil() {
    }

    public static  boolean sizeEquals(Iterable iterable, int expectedSize) {
        Iterator iterator = iterable.iterator();

        int currentSize = 0;
        while (iterator.hasNext()) {
            if (expectedSize > currentSize) {
                currentSize++;
                iterator.next();
                continue;
            } else {
                return false;
            }
        }

        return true;
    }

    public static  T getLast(Iterator iterator) {
        T last = null;
        while (iterator.hasNext()) {
            last = iterator.next();
        }

        return last;
    }

    public static  T getFirst(final Iterable iterable) {
        if (iterable == null) {
            return null;
        }

        final Iterator iterator = iterable.iterator();
        if (iterator == null) {
            return null;
        }

        return iterator.hasNext() ? iterator.next() : null;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy