1 /* 2 * Copyright (c) 2011-2024 PrimeFaces Extensions 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a copy 5 * of this software and associated documentation files (the "Software"), to deal 6 * in the Software without restriction, including without limitation the rights 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 * copies of the Software, and to permit persons to whom the Software is 9 * furnished to do so, subject to the following conditions: 10 * 11 * The above copyright notice and this permission notice shall be included in 12 * all copies or substantial portions of the Software. 13 * 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 * THE SOFTWARE. 21 */ 22 package org.primefaces.extensions.model.sheet; 23 24 import java.io.Serializable; 25 import java.util.Objects; 26 27 /** 28 * Spreadsheet component model for storing a row/column index. 29 * 30 * @author Mark Lassiter / Melloware 31 * @since 6.2 32 */ 33 public class SheetRowColIndex implements Serializable { 34 35 private static final long serialVersionUID = 1L; 36 37 private final String rowKey; 38 private final Integer colIndex; 39 40 /** 41 * Constructs an instance of RowColIndex for the row and column specified. 42 * 43 * @param rowKey the row represented by this index 44 * @param col the column represented by this index 45 */ 46 public SheetRowColIndex(final String rowKey, final Integer col) { 47 this.rowKey = rowKey; 48 colIndex = col; 49 } 50 51 @Override 52 public boolean equals(Object o) { 53 if (this == o) { 54 return true; 55 } 56 if (!(o instanceof SheetRowColIndex)) { 57 return false; 58 } 59 SheetRowColIndex that = (SheetRowColIndex) o; 60 return Objects.equals(getRowKey(), that.getRowKey()) && 61 Objects.equals(getColIndex(), that.getColIndex()); 62 } 63 64 @Override 65 public int hashCode() { 66 return Objects.hash(getRowKey(), getColIndex()); 67 } 68 69 @Override 70 public String toString() { 71 return "SheetRowColIndex{" + "rowKey=" + rowKey + ", colIndex=" + colIndex + '}'; 72 } 73 74 /** 75 * The rowIndex value. 76 * 77 * @return the rowIndex 78 */ 79 public String getRowKey() { 80 return rowKey; 81 } 82 83 /** 84 * The colIndex value. 85 * 86 * @return the colIndex 87 */ 88 public Integer getColIndex() { 89 return colIndex; 90 } 91 92 }