001package gudusoft.gsqlparser.dlineage.dataflow.model; 002 003import java.util.ArrayList; 004import java.util.List; 005import java.util.Objects; 006 007import gudusoft.gsqlparser.dlineage.util.Pair; 008 009public class DbObjectPosition { 010 private String file; 011 private String filePath; 012 private String sql; 013 private int index; 014 private List<Pair<Integer, Integer>> positions = new ArrayList<Pair<Integer, Integer>>(); 015 016 public String getFile() { 017 return file; 018 } 019 020 public void setFile(String file) { 021 this.file = file; 022 } 023 024 public String getSql() { 025 return sql; 026 } 027 028 public void setSql(String sql) { 029 this.sql = sql; 030 } 031 032 public int getIndex() { 033 return index; 034 } 035 036 public void setIndex(int index) { 037 this.index = index; 038 } 039 040 public List<Pair<Integer, Integer>> getPositions() { 041 return positions; 042 } 043 044 public void setPositions(List<Pair<Integer, Integer>> positions) { 045 this.positions = positions; 046 } 047 048 public String getFilePath() { 049 return filePath; 050 } 051 052 public void setFilePath(String filePath) { 053 this.filePath = filePath; 054 } 055 056 @Override 057 public String toString() { 058 return "DbObjectPosition [file=" + file + ", sql=" + sql + ", index=" + index + ", positions=" + positions 059 + "]"; 060 } 061 062 @Override 063 public boolean equals(Object o) { 064 if (this == o) return true; 065 if (o == null || getClass() != o.getClass()) return false; 066 DbObjectPosition that = (DbObjectPosition) o; 067 return index == that.index && 068 Objects.equals(file, that.file) && 069 Objects.equals(filePath, that.filePath) && 070 Objects.equals(sql, that.sql) && 071 Objects.equals(positions, that.positions); 072 } 073 074 @Override 075 public int hashCode() { 076 return Objects.hash(file, filePath, sql, index, positions); 077 } 078}