微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

com.google.common.collect.UnmodifiableIterator的实例源码

项目:neoscada    文件AbstractEventQueryImpl.java   
@Override
public synchronized void addListener ( final EventListener eventListener )
{
    this.listeners.add ( eventListener );

    final UnmodifiableIterator<List<Event>> it = Iterators.partition ( AbstractEventQueryImpl.this.events.iterator (),chunkSize );
    while ( it.hasNext () )
    {
        final List<org.eclipse.scada.ae.Event> chunk = it.next ();
        this.executor.execute ( new Runnable () {

            @Override
            public void run ()
            {
                eventListener.handleEvent ( chunk );
            }
        } );
    }

}
项目:guava-mock    文件MultiEdgesConnecting.java   
@Override
public UnmodifiableIterator<E> iterator() {
  final Iterator<? extends Entry<E,?>> entries = outEdgetoNode.entrySet().iterator();
  return new AbstractIterator<E>() {
    @Override
    protected E computeNext() {
      while (entries.hasNext()) {
        Entry<E,?> entry = entries.next();
        if (targetNode.equals(entry.getValue())) {
          return entry.getKey();
        }
      }
      return endOfData();
    }
  };
}
项目:Elasticsearch    文件AliasOrIndex.java   
/**
 * Returns the unique alias Metadata per concrete index.
 *
 * (note that although alias can point to the same concrete indices,each alias reference may have its own routing
 * and filters)
 */
public Iterable<Tuple<String,AliasMetaData>> getConcreteIndexAndaliasMetaDatas() {
    return new Iterable<Tuple<String,AliasMetaData>>() {
        @Override
        public Iterator<Tuple<String,AliasMetaData>> iterator() {
            return new UnmodifiableIterator<Tuple<String,AliasMetaData>>() {

                int index = 0;

                @Override
                public boolean hasNext() {
                    return index < referenceIndexMetaDatas.size();
                }

                @Override
                public Tuple<String,AliasMetaData> next() {
                    IndexMetaData indexMetaData = referenceIndexMetaDatas.get(index++);
                    return new Tuple<>(indexMetaData.getIndex(),indexMetaData.getAliases().get(aliasName));
                }

            };
        }
    };
}
项目:hadoop    文件HostFileManager.java   
@Override
public Iterator<InetSocketAddress> iterator() {
  return new UnmodifiableIterator<InetSocketAddress>() {
    private final Iterator<Map.Entry<InetAddress,Integer>> it = addrs.entries().iterator();

    @Override
    public boolean hasNext() {
      return it.hasNext();
    }

    @Override
    public InetSocketAddress next() {
      Map.Entry<InetAddress,Integer> e = it.next();
      return new InetSocketAddress(e.getKey(),e.getValue());
    }
  };
}
项目:googles-monorepo-demo    文件AbstractBaseGraph.java   
/**
 * An implementation of {@link BaseGraph#edges()} defined in terms of {@link #nodes()} and {@link
 * #successors(Object)}.
 */
@Override
public Set<EndpointPair<N>> edges() {
  return new AbstractSet<EndpointPair<N>>() {
    @Override
    public UnmodifiableIterator<EndpointPair<N>> iterator() {
      return EndpointPairIterator.of(AbstractBaseGraph.this);
    }

    @Override
    public int size() {
      return Ints.saturatedCast(edgeCount());
    }

    @Override
    public boolean contains(@Nullable Object obj) {
      if (!(obj instanceof EndpointPair)) {
        return false;
      }
      EndpointPair<?> endpointPair = (EndpointPair<?>) obj;
      return isDirected() == endpointPair.isOrdered()
          && nodes().contains(endpointPair.nodeU())
          && successors(endpointPair.nodeU()).contains(endpointPair.nodeV());
    }
  };
}
项目:googles-monorepo-demo    文件MultiEdgesConnecting.java   
@Override
public UnmodifiableIterator<E> iterator() {
  final Iterator<? extends Entry<E,?> entry = entries.next();
        if (targetNode.equals(entry.getValue())) {
          return entry.getKey();
        }
      }
      return endOfData();
    }
  };
}
项目:Backmemed    文件NBTUtil.java   
/**
 * Writes the given blockstate to the given tag.
 *  
 * @param tag The tag to write to
 * @param state The blockstate to be written
 */
public static NBTTagCompound writeBlockState(NBTTagCompound tag,IBlockState state)
{
    tag.setString("Name",((ResourceLocation)Block.REGISTRY.getNameForObject(state.getBlock())).toString());

    if (!state.getProperties().isEmpty())
    {
        NBTTagCompound nbttagcompound = new NBTTagCompound();
        UnmodifiableIterator unmodifiableiterator = state.getProperties().entrySet().iterator();

        while (unmodifiableiterator.hasNext())
        {
            Entry < IProperty<?>,Comparable<? >> entry = (Entry)unmodifiableiterator.next();
            IProperty<?> iproperty = (IProperty)entry.getKey();
            nbttagcompound.setString(iproperty.getName(),getName(iproperty,(Comparable)entry.getValue()));
        }

        tag.setTag("Properties",nbttagcompound);
    }

    return tag;
}
项目:Backmemed    文件PotionType.java   
public boolean hasInstantEffect()
{
    if (!this.effects.isEmpty())
    {
        UnmodifiableIterator unmodifiableiterator = this.effects.iterator();

        while (unmodifiableiterator.hasNext())
        {
            PotionEffect potioneffect = (PotionEffect)unmodifiableiterator.next();

            if (potioneffect.getpotion().isInstant())
            {
                return true;
            }
        }
    }

    return false;
}
项目:aliyun-oss-hadoop-fs    文件HostFileManager.java   
@Override
public Iterator<InetSocketAddress> iterator() {
  return new UnmodifiableIterator<InetSocketAddress>() {
    private final Iterator<Map.Entry<InetAddress,e.getValue());
    }
  };
}
项目:big-c    文件HostFileManager.java   
@Override
public Iterator<InetSocketAddress> iterator() {
  return new UnmodifiableIterator<InetSocketAddress>() {
    private final Iterator<Map.Entry<InetAddress,e.getValue());
    }
  };
}
项目:Qbar    文件VisibilityModelState.java   
@Override
public Optional<TRSRTransformation> apply(final Optional<? extends IModelPart> part)
{
    if (part.isPresent())
    {
        final UnmodifiableIterator<String> parts = Models.getParts(part.get());
        if (parts.hasNext())
        {
            final String name = parts.next();
            if (!parts.hasNext() && this.blacklist && this.parts.contains(name)
                    || !this.blacklist && !this.parts.contains(name))
                return this.value;
        }
    }
    return Optional.empty();
}
项目:emodb    文件DataStoreJerseyTest.java   
@Test
public void testListTablesRestricted() {
    final TableOptions options = new TableOptionsBuilder().setPlacement("my:placement").build();
    final ImmutableMap<String,Object> template = ImmutableMap.<String,Object>of("key","value1");
    final TableAvailability availability = new TableAvailability("my:placement",false);
    final DefaultTable a1 = new DefaultTable("a-table-1",options,template,availability);
    final DefaultTable a2 = new DefaultTable("a-table-2",availability);
    final DefaultTable b1 = new DefaultTable("b-table-1",availability);
    final DefaultTable b2 = new DefaultTable("b-table-2",availability);
    final DefaultTable a3 = new DefaultTable("a-table-3",availability);
    final ImmutableList<Table> tables = ImmutableList.of(a1,a2,b1,b2,a3);

    final UnmodifiableIterator<Table> iterator = tables.iterator();
    //noinspection unchecked
    when(_server.listTables(null,Long.MAX_VALUE)).thenAnswer(invocation -> iterator);

    {
        final Iterator<Table> tableIterator = sorClient(APIKEY_READ_TABLES_A).listTables(null,3);
        final ImmutableList<Table> result = ImmutableList.copyOf(tableIterator);
        assertEquals(ImmutableList.<Table>of(a1,a3),result);
    }
    verify(_server,times(1)).listTables(null,Long.MAX_VALUE);
}
项目:LP2    文件BlockGenericPipe.java   
@Override
public Optional<TRSRTransformation> apply(Optional<? extends IModelPart> part)
      {
          if(part.isPresent())
          {
              // This whole thing is subject to change,but should do for Now.
              UnmodifiableIterator<String> parts = Models.getParts(part.get());
              if(parts.hasNext())
              {
                  String name = parts.next();
                  // only interested in the root level
                  if(!parts.hasNext() && hidden.contains(name))
                  {
                      return value;
                  }
              }
          }
          return Optional.absent();
      }
项目:hadoop-2.6.0-cdh5.4.3    文件HostFileManager.java   
@Override
public Iterator<InetSocketAddress> iterator() {
  return new UnmodifiableIterator<InetSocketAddress>() {
    private final Iterator<Map.Entry<InetAddress,e.getValue());
    }
  };
}
项目:miscellaneous    文件BenchmarkFixture.java   
@Provides
Iterable<Callable<Integer>> callable() {
  return new Iterable<Callable<Integer>>() {
    @Override
    public Iterator<Callable<Integer>> iterator() {
      return new UnmodifiableIterator<Callable<Integer>>() {
        @Override
        public boolean hasNext() {
          return true;
        }

        @Override
        public Callable<Integer> next() {
          return new Callable<Integer>() {
            @Override
            public Integer call() throws Exception {
              TimeMeasure.millis(3).sleep();
              return 1;
            }
          };
        }
      };
    }
  };
}
项目:owsi-core-parent    文件IndexedItemListView.java   
@Override
protected Iterator<IModel<T>> getIt@R_404_6450@odels(final long offset,final long size) {
    final List<T> list = getModelObject();
    if (list == null) {
        return Collections.emptyIterator();
    }

    return new UnmodifiableIterator<IModel<T>>() {
        private int index = (int) offset;
        private final int end = (int) (offset + size);

        @Override
        public boolean hasNext() {
            return index < end && index < internalGetItemCount();
        }

        @Override
        public IModel<T> next() {
            return newIt@R_404_6450@odel(index++);
        }
    };
}
项目:FlexMap    文件HostFileManager.java   
@Override
public Iterator<InetSocketAddress> iterator() {
  return new UnmodifiableIterator<InetSocketAddress>() {
    private final Iterator<Map.Entry<InetAddress,e.getValue());
    }
  };
}
项目:mossypokerbot    文件SortedHand.java   
@Override
    public IHand getHighestFiveCardHand()
    {
//        if(cards.size() < 5)
//        {
//            return this;
//        }
//        return new Hand(cards.asList().reverse().subList(0,5));

        UnmodifiableIterator iter = cards.iterator();
        int offset = cards.size() - 5;
        while(offset-- > 0)
        {
            iter.next();
        }
        return new SortedHand(cards.tailSet((Card)iter.next()) );
    }
项目:mossypokerbot    文件UnsortedHand.java   
@Override
public IHand getHighestFiveCardHand() {
    if(cards.size() < 5)
    {
        return this;
    }

    ImmutableSortedSet<Card> sortedCards = cardsSorted();
    UnmodifiableIterator iter = sortedCards.iterator();
    int offset = sortedCards.size() - 5;
    while(offset-- > 0)
    {
        iter.next();
    }
    return new SortedHand(sortedCards.tailSet((Card)iter.next()) );
}
项目:pikes    文件Corpus.java   
@Override
public Iterator<KAFDocument> iterator() {
    return new UnmodifiableIterator<KAFDocument>() {

        private int index = 0;

        @Override
        public boolean hasNext() {
            return this.index < Corpus.this.files.length;
        }

        @Override
        public KAFDocument next() {
            return get(this.index++);
        }

    };
}
项目:ds3_java_sdk    文件RangeHelperImpl_Test.java   
@Test
public void testReplacingValueInThirdRange() {
    final ImmutableCollection<Range> existingRanges = makeSomeRanges();

    final long intendednumBytesToTransfer = numBytesToTransfer(existingRanges,existingRanges.size());
    final long numBytesTransferred = 27000;

    final ImmutableCollection<Range> newRanges = RangeHelper.replaceRange(existingRanges,numBytesTransferred,intendednumBytesToTransfer);

    assertEquals(1,newRanges.size());

    final UnmodifiableIterator<Range> existingRangesIterator = existingRanges.iterator();
    existingRangesIterator.next();

    final long lengthOf2ndRange = existingRangesIterator.next().getLength();
    final long expectedStartIn3rdRange = lengthOf2ndRange + numBytesTransferred;

    assertEquals(expectedStartIn3rdRange,newRanges.iterator().next().getStart());
    assertEquals(existingRangesIterator.next().getEnd(),newRanges.iterator().next().getEnd());
}
项目:ds3_java_sdk    文件RangeHelperImpl_Test.java   
@Test
public void testReplacingValueWhenWeTransferExactlyFirstRange() {
    final ImmutableCollection<Range> existingRanges = makeSomeRanges();

    final long intendednumBytesToTransfer = numBytesToTransfer(existingRanges,existingRanges.size());
    final long numBytesTransferred = existingRanges.iterator().next().getLength();

    final ImmutableCollection<Range> newRanges = RangeHelper.replaceRange(existingRanges,intendednumBytesToTransfer);

    assertEquals(2,newRanges.size());

    final UnmodifiableIterator<Range> existingRangesIterator = existingRanges.iterator();
    existingRangesIterator.next();

    final UnmodifiableIterator<Range> newRangesIterator = newRanges.iterator();

    while (existingRangesIterator.hasNext()) {
        final Range existingRange = existingRangesIterator.next();
        final Range newRange = newRangesIterator.next();

        assertEquals(existingRange.getStart(),newRange.getStart());
        assertEquals(existingRange.getLength(),newRange.getLength());
    }
}
项目:ds3_java_sdk    文件RangeHelperImpl_Test.java   
@Test
public void testReplacingValueWhenWeTransferExactly1st2Ranges() {
    final ImmutableCollection<Range> existingRanges = makeSomeRanges();

    final long intendednumBytesToTransfer = numBytesToTransfer(existingRanges,existingRanges.size());
    final long numBytesTransferred = numBytesToTransfer(existingRanges,2);

    final ImmutableCollection<Range> newRanges = RangeHelper.replaceRange(existingRanges,newRanges.size());

    final UnmodifiableIterator<Range> existingRangesIterator = existingRanges.iterator();
    existingRangesIterator.next();
    existingRangesIterator.next();

    final UnmodifiableIterator<Range> newRangesIterator = newRanges.iterator();

    while (existingRangesIterator.hasNext()) {
        final Range existingRange = existingRangesIterator.next();
        final Range newRange = newRangesIterator.next();

        assertEquals(existingRange.getStart(),newRange.getLength());
    }
}
项目:ds3_java_sdk    文件RangeHelperImpl_Test.java   
@Test
public void testReplacingValueWhenWeTransfer0Bytes() {
    final ImmutableCollection<Range> existingRanges = makeSomeRanges();

    final long intendednumBytesToTransfer = numBytesToTransfer(existingRanges,existingRanges.size());
    final long numBytesTransferred = 0;

    final ImmutableCollection<Range> newRanges = RangeHelper.replaceRange(existingRanges,intendednumBytesToTransfer);

    assertEquals(3,newRanges.size());

    final UnmodifiableIterator<Range> existingRangesIterator = existingRanges.iterator();

    final UnmodifiableIterator<Range> newRangesIterator = newRanges.iterator();

    while (existingRangesIterator.hasNext()) {
        final Range existingRange = existingRangesIterator.next();
        final Range newRange = newRangesIterator.next();

        assertEquals(existingRange.getStart(),newRange.getLength());
    }
}
项目:guava    文件AbstractBaseGraph.java   
@Override
public UnmodifiableIterator<EndpointPair<N>> iterator() {
  return Iterators.unmodifiableIterator(
      Iterators.concat(
          Iterators.transform(
              graph.predecessors(node).iterator(),new Function<N,EndpointPair<N>>() {
                @Override
                public EndpointPair<N> apply(N predecessor) {
                  return EndpointPair.ordered(predecessor,node);
                }
              }),Iterators.transform(
              // filter out 'node' from successors (already covered by predecessors,above)
              Sets.difference(graph.successors(node),ImmutableSet.of(node)).iterator(),EndpointPair<N>>() {
                @Override
                public EndpointPair<N> apply(N successor) {
                  return EndpointPair.ordered(node,successor);
                }
              })));
}
项目:guava    文件MultiEdgesConnecting.java   
@Override
public UnmodifiableIterator<E> iterator() {
  final Iterator<? extends Entry<E,?> entry = entries.next();
        if (targetNode.equals(entry.getValue())) {
          return entry.getKey();
        }
      }
      return endOfData();
    }
  };
}
项目:Troilus    文件MutationQuery.java   
private void handle(final BatchStatement batchStmt,final UnmodifiableIterator<T> batchablesIt,final Function<T,ListenableFuture<Statement>> statementFetcher) {

    if (batchablesIt.hasNext()) {
        final ListenableFuture<Statement> statementFuture = statementFetcher.apply(batchablesIt.next());

        Runnable resultHandler = new Runnable() {

            @Override
            public void run() {
                try {
                    batchStmt.add(statementFuture.get());
                    handle(batchStmt,batchablesIt,statementFetcher);
                } catch (InterruptedException | ExecutionException | RuntimeException e) {
                    setException(ListenableFutures.unwrapIfNecessary(e));
                }
            }
        };
        statementFuture.addListener(resultHandler,MoreExecutors.directExecutor());

    } else {
        set(batchStmt);
    }
}
项目:thesis-cilib    文件CentroidHolder.java   
@Override
public Iterator<ClusterCentroid> iterator() {
    return new UnmodifiableIterator<ClusterCentroid>() {

        private int index = 0;

        @Override
        public final boolean hasNext() {
            return index < components.length;
        }

        @Override
        public final ClusterCentroid next() {
            return components[index++];
        }

    };
}
项目:thesis-cilib    文件ClusterCentroid.java   
@Override
public Iterator<Numeric> iterator() {
    return new UnmodifiableIterator<Numeric>() {

        private int index = 0;

        @Override
        public final boolean hasNext() {
            return index < components.length;
        }

        @Override
        public final Numeric next() {
            return components[index++];
        }
    };
}
项目:thesis-cilib    文件Vector.java   
/**
 * Obtain an unmodifiable iterator to traverse the {@code Vector} iteratively.
 * @return An {@code Iterator} of {@code Numeric}s.
 * @throws UnsupportedOperationException if {@code remove()} is called.
 */
@Override
public Iterator<Numeric> iterator() {
    return new UnmodifiableIterator<Numeric>() {

        private int index = 0;

        @Override
        public final boolean hasNext() {
            return index < components.length;
        }

        @Override
        public final Numeric next() {
            return components[index++];
        }
    };
}
项目:yangtools    文件ConstantArrayCollection.java   
@Nonnull
@Override
public Iterator<E> iterator() {
    return new UnmodifiableIterator<E>() {
        private int offset = 0;

        @Override
        public boolean hasNext() {
            return offset < array.length;
        }

        @Override
        public E next() {
            if (offset >= array.length) {
                throw new NoSuchElementException();
            }
            return array[offset++];
        }
    };
}
项目:yangtools    文件ImmutableOffsetMap.java   
@Nonnull
@Override
public Iterator<Entry<K,V>> iterator() {
    final Iterator<Entry<K,Integer>> it = offsets.entrySet().iterator();

    return new UnmodifiableIterator<Entry<K,V>>() {
        @Override
        public boolean hasNext() {
            return it.hasNext();
        }

        @Override
        public Entry<K,V> next() {
            final Entry<K,Integer> e = it.next();
            return new SimpleImmutableEntry<>(e.getKey(),objects[e.getValue()]);
        }
    };
}
项目:yangtools    文件SchemaNodeIdentifier.java   
/**
 * Returns the list of nodes which need to be traversed to get from this
 * node to the starting point (root for absolute SchemaPaths).
 *
 * @return list of <code>qname</code> instances which represents
 *         path from the schema node towards the root.
 */
public Iterable<QName> getPathTowardsRoot() {
    return () -> new UnmodifiableIterator<QName>() {
        private SchemaNodeIdentifier current = SchemaNodeIdentifier.this;

        @Override
        public boolean hasNext() {
            return current.parent != null;
        }

        @Override
        public QName next() {
            if (current.parent != null) {
                final QName ret = current.qname;
                current = current.parent;
                return ret;
            } else {
                throw new NoSuchElementException("No more elements available");
            }
        }
    };
}
项目:yangtools    文件SchemaPath.java   
/**
 * Returns the list of nodes which need to be traversed to get from this
 * node to the starting point (root for absolute SchemaPaths).
 *
 * @return list of <code>qname</code> instances which represents
 *         path from the schema node towards the root.
 */
public Iterable<QName> getPathTowardsRoot() {
    return () -> new UnmodifiableIterator<QName>() {
        private SchemaPath current = SchemaPath.this;

        @Override
        public boolean hasNext() {
            return current.parent != null;
        }

        @Override
        public QName next() {
            if (current.parent != null) {
                final QName ret = current.qname;
                current = current.parent;
                return ret;
            }

            throw new NoSuchElementException("No more elements available");
        }
    };
}
项目:calcite    文件RelCollationImpl.java   
public int compareto(@Nonnull RelMultipleTrait o) {
  final RelCollationImpl that = (RelCollationImpl) o;
  final UnmodifiableIterator<RelFieldCollation> iterator =
      that.fieldCollations.iterator();
  for (RelFieldCollation f : fieldCollations) {
    if (!iterator.hasNext()) {
      return 1;
    }
    final RelFieldCollation f2 = iterator.next();
    int c = Utilities.compare(f.getFieldindex(),f2.getFieldindex());
    if (c != 0) {
      return c;
    }
  }
  return iterator.hasNext() ? -1 : 0;
}
项目:bazel    文件Bug62456849TestDataGenerator.java   
public static void main(String[] args) throws IOException {
  checkArgument(
      args.length == 2,"Usage: %s <input-jar> <output-jar>",Bug62456849TestDataGenerator.class.getName());
  Path inputJar = Paths.get(args[0]);
  checkArgument(Files.isRegularFile(inputJar),"The input jar %s is not a file",inputJar);
  Path outputJar = Paths.get(args[1]);

  try (ZipFile inputZip = new ZipFile(inputJar.toFile());
      ZipOutputStream outZip =
          new ZipOutputStream(new bufferedoutputstream(Files.newOutputStream(outputJar)))) {
    for (UnmodifiableIterator<? extends ZipEntry> it =
            Iterators.forEnumeration(inputZip.entries());
        it.hasNext(); ) {
      ZipEntry entry = it.next();
      String entryName = entry.getName();
      byte[] content =
          entryName.endsWith(".class")
              ? convertClass(inputZip,entry)
              : readEntry(inputZip,entry);
      writetoZipFile(outZip,entryName,content);
    }
  }
}
项目:jrunalyzer    文件InMemoryDataSource.java   
@Override
public Iterable<Track> loadTracks(final Iterable<Id> ids)
        throws IOException {
    return new Iterable<Track>() {
        @Override
        public Iterator<Track> iterator() {
            return new UnmodifiableIterator<Track>() {

                Iterator<Id> delegate = ids.iterator();

                @Override
                public boolean hasNext() {
                    return this.delegate.hasNext();
                }

                @Override
                public Track next() {
                    return loadTrack(this.delegate.next());
                }
            };
        }
    };
}
项目:closure-stylesheets    文件CssNode.java   
/**
 * This node and the transitive closure of its {@link #parent}s.
 */
public Iterable<CssNode> ancestors() {
  return new Iterable<CssNode>() {
    @Override
    public Iterator<CssNode> iterator() {
      return new UnmodifiableIterator<CssNode>() {

        private CssNode current = CssNode.this;

        @Override
        public boolean hasNext() {
          return current != null;
        }

        @Override
        public CssNode next() {
          CssNode result = current;
          current = current.getParent();
          return result;
        }
      };
    }
  };
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。