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

com.netflix.astyanax.model.ColumnSlice Maven / Gradle / Ivy

There is a newer version: 3.10.2
Show newest version
/*******************************************************************************
 * Copyright 2011 Netflix
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 ******************************************************************************/
package com.netflix.astyanax.model;

import java.util.Collection;

/**
 * Definition for a sub set of slices. A subset can either be a fixed set of
 * columns a range of ordered columns. The slice defines the sub set of columns
 * at the ColumnPath position within the row.
 * 
 * @author elandau
 * 
 * @param 
 */
public class ColumnSlice {
    private Collection columns;

    // - or -

    private C startColumn;
    private C endColumn;
    private boolean reversed = false;
    private int limit = Integer.MAX_VALUE;

    public ColumnSlice(Collection columns) {
        this.columns = columns;
    }

    public ColumnSlice(C startColumn, C endColumn) {
        this.startColumn = startColumn;
        this.endColumn = endColumn;
    }

    public ColumnSlice setLimit(int limit) {
        this.limit = limit;
        return this;
    }

    public ColumnSlice setReversed(boolean value) {
        this.reversed = value;
        return this;
    }

    public Collection getColumns() {
        return columns;
    }

    public C getStartColumn() {
        return startColumn;
    }

    public C getEndColumn() {
        return endColumn;
    }

    public boolean getReversed() {
        return reversed;
    }

    public int getLimit() {
        return limit;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy