001package org.nuxeo.ecm.platform.importer.queue.consumer; 002 003import java.util.ArrayList; 004import java.util.Collections; 005import java.util.List; 006 007import org.nuxeo.ecm.platform.importer.source.SourceNode; 008 009/** 010 * @since 8.3 011 */ 012public class Batch { 013 014 private final int capacity; 015 016 final List<SourceNode> nodes = new ArrayList<>(); 017 018 019 public Batch(int capacity) { 020 this.capacity = capacity; 021 } 022 023 public int size() { 024 return nodes.size(); 025 } 026 027 public void add(SourceNode src) { 028 nodes.add(src); 029 } 030 031 public boolean shouldBeEvicted() { 032 return false; 033 } 034 035 public boolean isFull() { 036 return nodes.size() >= capacity; 037 } 038 039 public List<SourceNode> getNodes() { 040 return Collections.unmodifiableList(nodes); 041 } 042 043 public void clear() { 044 nodes.clear(); 045 } 046}