io.ebeaninternal.server.query.NativeSqlQueryPlanKey Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ebean Show documentation
Show all versions of ebean Show documentation
composite of common runtime dependencies for all platforms
package io.ebeaninternal.server.query;
import io.ebeaninternal.api.CQueryPlanKey;
/**
* QueryPlanKey for native sql queries.
*/
public class NativeSqlQueryPlanKey implements CQueryPlanKey {
private final String sql;
public NativeSqlQueryPlanKey(String sql) {
this.sql = sql;
}
@Override
public String toString() {
return getPartialKey();
}
/**
* Return as a partial key. For rawSql hash the sql is part of the key and as such
* needs to be included in order to have a complete key. Typically the MD5 of the sql
* can be used as a short form proxy for the actual sql.
*/
@Override
public String getPartialKey() {
return hashCode() + "_n";
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
NativeSqlQueryPlanKey that = (NativeSqlQueryPlanKey) o;
return sql.equals(that.sql);
}
@Override
public int hashCode() {
return sql.hashCode();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy