# com.beasys.commerce.ebusiness.util
ScrollableModel Interface

public interface ScrollableModel
extends `Serializable`

This file contains an interface for any scrollable model It helps manage large returned value by returning only a set of cached value objects (if used properly), reducing the traffic and the memory usage with this simple interface.

All Known Implementing Classes
  `DefaultScrollableModel`

All Superinterfaces
  `Serializable`

## Method Summary

`public int` | `getCount`() gets the total number of elements managed by the Scrollable Model.
`public `Class`` | `getModelClass`() All objects managed by the scrollable model are of the same class.
`public int` | `getNbPages`() Gets the total number of pages over the scrollable model
`public `Object`[]` | `getPage`(int pageIndex) Gets a page worth of Objects, given a page index.
`public int` | `getPageSize`() gets the page size for an instance of a scrollable model i.e. '10' means 10 value objects are kept in one page.
`public `Object`` | `getValueAt`(int valueIndex) Gets the value (hopefully a value object) based on the index the value
`public void` | `setValueAt`(`Serializable` value, int valueIndex) Sets the value of an element based on its index in the list of values managed by the scrollable model.

## Method Detail

### getCount() Method

    public int getCount()

gets the total number of elements managed by the Scrollable Model.

#### Returns

the count of all elements.

### getModelClass() Method

    public Class getModelClass()

All objects managed by the scrollable model are of the same class. This method retrieves that class

#### Returns

the Class of all objects managed by the scrollable model.

### getNbPages() Method

    public int getNbPages()

Gets the total number of pages over the scrollable model

#### Returns

the number of pages

### getPage(int) Method

    public Object[] getPage(int pageIndex)

Gets a page worth of Objects, given a page index.

#### Parameters

pageIndex
  the index in the list of pages

#### Returns

an array of objects for that page.

### getPageSize() Method

    public int getPageSize()

gets the page size for an instance of a scrollable model i.e. '10' means 10 value objects are kept in one page.

#### Returns

the size of all pages

### getValueAt(int) Method

    public Object getValueAt(int valueIndex)

Gets the value (hopefully a value object) based on the index the value

#### Parameters

valueIndex
  the index for the value to retrieve

#### Returns

the corresponding value as an Object

### setValueAt(Serializable, int) Method

    public void setValueAt(Serializable value,
                           int valueIndex)

Sets the value of an element based on its index in the list of values managed by the scrollable model.

#### Parameters

value
  the 'value object' at a location in the list

valueIndex
  the location of the value object in the list