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

com.scalar.database.storage.cassandra.ScannerIterator Maven / Gradle / Ivy

Go to download

A universal transaction manager that achieves database-agnostic transactions and distributed transactions that span multiple databases

There is a newer version: 3.14.0-alpha.1
Show newest version
package com.scalar.database.storage.cassandra;

import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.Row;
import com.datastax.driver.core.TableMetadata;
import com.scalar.database.api.Result;
import java.util.Iterator;
import javax.annotation.Nullable;
import javax.annotation.concurrent.NotThreadSafe;

@NotThreadSafe
public final class ScannerIterator implements Iterator {
  private final Iterator iterator;
  private final TableMetadata metadata;

  public ScannerIterator(ResultSet resultSet, TableMetadata metadata) {
    iterator = resultSet.iterator();
    this.metadata = metadata;
  }

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

  @Override
  @Nullable
  public Result next() {
    Row row = iterator.next();
    if (row == null) {
      return null;
    }
    return new ResultImpl(row, metadata);
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy