diff options
author | Roberto E. Escobar | 2014-11-25 21:59:46 +0000 |
---|---|---|
committer | Angel Avila | 2014-11-25 21:59:46 +0000 |
commit | 97afeb67fb7ddea87428dd9ed29dfe1d62ae77af (patch) | |
tree | e6f2856f13ad66939ea24e1048aae5454e35ecd5 | |
parent | 7b10e8fa24170d8f26dec5d1525c81431c01641a (diff) | |
download | org.eclipse.osee-97afeb67fb7ddea87428dd9ed29dfe1d62ae77af.tar.gz org.eclipse.osee-97afeb67fb7ddea87428dd9ed29dfe1d62ae77af.tar.xz org.eclipse.osee-97afeb67fb7ddea87428dd9ed29dfe1d62ae77af.zip |
feature[ats_ATS47363]: Update withClause TxFilter
Change-Id: Ie02077fdfed4205797ba8421ff04dcb2feea6b6f
9 files changed, 45 insertions, 24 deletions
diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/loader/LoadSqlWriter.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/loader/LoadSqlWriter.java index 2a442bf13de..a8250a4797b 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/loader/LoadSqlWriter.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/loader/LoadSqlWriter.java @@ -255,7 +255,7 @@ public class LoadSqlWriter extends AbstractSqlWriter { } @Override - public String getWithClauseTxBranchFilter(String txsAlias) throws OseeCoreException { + public String getWithClauseTxBranchFilter(String txsAlias, boolean deletedPredicate) throws OseeCoreException { return Strings.emptyString(); } diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ArtifactQuerySqlWriter.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ArtifactQuerySqlWriter.java index cbc560d414e..7c35450ce14 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ArtifactQuerySqlWriter.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ArtifactQuerySqlWriter.java @@ -84,8 +84,10 @@ public class ArtifactQuerySqlWriter extends AbstractSqlWriter { @Override public String getTxBranchFilter(String txsAlias) { - boolean allowDeleted = - OptionsUtil.areDeletedArtifactsIncluded(getOptions()) || OptionsUtil.areDeletedAttributesIncluded(getOptions()) || OptionsUtil.areDeletedRelationsIncluded(getOptions()); + boolean allowDeleted = // + OptionsUtil.areDeletedArtifactsIncluded(getOptions()) || // + OptionsUtil.areDeletedAttributesIncluded(getOptions()) || // + OptionsUtil.areDeletedRelationsIncluded(getOptions()); StringBuilder sb = new StringBuilder(); writeTxFilter(txsAlias, sb, allowDeleted); @@ -143,20 +145,30 @@ public class ArtifactQuerySqlWriter extends AbstractSqlWriter { } @Override - public String getWithClauseTxBranchFilter(String txsAlias) throws OseeCoreException { + public String getWithClauseTxBranchFilter(String txsAlias, boolean deletedPredicate) throws OseeCoreException { StringBuilder sb = new StringBuilder(); - if (OptionsUtil.isHistorical(getOptions())) { - sb.append(txsAlias); - sb.append(".transaction_id <= ?"); - addParameter(OptionsUtil.getFromTransaction(getOptions())); + + if (deletedPredicate) { + boolean allowDeleted = // + OptionsUtil.areDeletedArtifactsIncluded(getOptions()) || // + OptionsUtil.areDeletedAttributesIncluded(getOptions()) || // + OptionsUtil.areDeletedRelationsIncluded(getOptions()); + writeTxFilter(txsAlias, sb, allowDeleted); + } else { + if (OptionsUtil.isHistorical(getOptions())) { + sb.append(txsAlias); + sb.append(".transaction_id <= ?"); + addParameter(OptionsUtil.getFromTransaction(getOptions())); + } } if (branchUuid > 0) { - sb.append(" AND "); + if (sb.length() > 0) { + sb.append(" AND "); + } sb.append(txsAlias); sb.append(".branch_id = ?"); addParameter(branchUuid); } return sb.toString(); } - } diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ObjectQuerySqlWriter.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ObjectQuerySqlWriter.java index 105da520cc8..76035d1b716 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ObjectQuerySqlWriter.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/ObjectQuerySqlWriter.java @@ -169,14 +169,22 @@ public class ObjectQuerySqlWriter extends AbstractSqlWriter { } @Override - public String getWithClauseTxBranchFilter(String txsAlias) throws OseeCoreException { - boolean allowDeleted = // - OptionsUtil.areDeletedArtifactsIncluded(getOptions()) || // - OptionsUtil.areDeletedAttributesIncluded(getOptions()) || // - OptionsUtil.areDeletedRelationsIncluded(getOptions()); - + public String getWithClauseTxBranchFilter(String txsAlias, boolean deletedPredicate) throws OseeCoreException { StringBuilder sb = new StringBuilder(); - writeTxFilter(txsAlias, sb, allowDeleted); + + if (deletedPredicate) { + boolean allowDeleted = // + OptionsUtil.areDeletedArtifactsIncluded(getOptions()) || // + OptionsUtil.areDeletedAttributesIncluded(getOptions()) || // + OptionsUtil.areDeletedRelationsIncluded(getOptions()); + writeTxFilter(txsAlias, sb, allowDeleted); + } else { + if (OptionsUtil.isHistorical(getOptions())) { + sb.append(txsAlias); + sb.append(".transaction_id <= ?"); + addParameter(OptionsUtil.getFromTransaction(getOptions())); + } + } if (withTxFilterClause != null) { sb.append("\n AND \n "); diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/QuerySqlWriter.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/QuerySqlWriter.java index b0dc33e2592..9fd81ba0fcf 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/QuerySqlWriter.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/engines/QuerySqlWriter.java @@ -82,7 +82,7 @@ public class QuerySqlWriter extends AbstractSqlWriter { } @Override - public String getWithClauseTxBranchFilter(String txsAlias) throws OseeCoreException { + public String getWithClauseTxBranchFilter(String txsAlias, boolean deletedPredicate) throws OseeCoreException { return Strings.emptyString(); } diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/ArtifactGuidSqlHandler.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/ArtifactGuidSqlHandler.java index 5f0bdd91c1e..d7a32351246 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/ArtifactGuidSqlHandler.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/ArtifactGuidSqlHandler.java @@ -61,7 +61,7 @@ public class ArtifactGuidSqlHandler extends SqlHandler<CriteriaArtifactGuids> { writer.addParameter(ids.iterator().next()); } sb.append(" AND "); - sb.append(writer.getWithClauseTxBranchFilter("txs")); + sb.append(writer.getWithClauseTxBranchFilter("txs", false)); sb.append("\n GROUP BY art.art_id"); String body = sb.toString(); diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTokenSqlHandler.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTokenSqlHandler.java index ebffe30275e..84b8140bda7 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTokenSqlHandler.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTokenSqlHandler.java @@ -159,8 +159,9 @@ public class AttributeTokenSqlHandler extends SqlHandler<CriteriaAttributeKeywor } } attrSb.append("\n AND \n"); - attrSb.append(" att.gamma_id = txs.gamma_id AND "); - attrSb.append(writer.getTxBranchFilter("txs")); + attrSb.append(" att.gamma_id = txs.gamma_id"); + attrSb.append(" AND "); + attrSb.append(writer.getWithClauseTxBranchFilter("txs", true)); writer.addWithClause(newSimpleWithClause(attrAlias, attrSb.toString())); writer.addTable(attrAlias); } diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTypeExistsSqlHandler.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTypeExistsSqlHandler.java index d6ede728450..0bc023fb8d1 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTypeExistsSqlHandler.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/AttributeTypeExistsSqlHandler.java @@ -79,7 +79,7 @@ public class AttributeTypeExistsSqlHandler extends SqlHandler<CriteriaAttributeT writer.addParameter(localId); } sb.append(" AND "); - sb.append(writer.getWithClauseTxBranchFilter("txs")); + sb.append(writer.getWithClauseTxBranchFilter("txs", false)); sb.append("\n GROUP BY attr.art_id"); String body = sb.toString(); diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/RelatedToSqlHandler.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/RelatedToSqlHandler.java index f26f857f721..e5cb6434162 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/RelatedToSqlHandler.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/handlers/RelatedToSqlHandler.java @@ -69,7 +69,7 @@ public class RelatedToSqlHandler extends SqlHandler<CriteriaRelatedTo> { sb.append("\n WHERE txs.gamma_id = rel.gamma_id AND \n"); sb.append(getPredicate(writer, "txs", "rel")); sb.append(" AND "); - sb.append(writer.getWithClauseTxBranchFilter("txs")); + sb.append(writer.getWithClauseTxBranchFilter("txs", false)); sb.append("\n GROUP BY rel.a_art_id\n"); String body = sb.toString(); diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/sql/AbstractSqlWriter.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/sql/AbstractSqlWriter.java index 60a143bc8d8..678a1b05ba4 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/sql/AbstractSqlWriter.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/sql/AbstractSqlWriter.java @@ -152,7 +152,7 @@ public abstract class AbstractSqlWriter implements HasOptions { protected abstract void writeSelect(Iterable<SqlHandler<?>> handlers) throws OseeCoreException; - public abstract String getWithClauseTxBranchFilter(String txsAlias) throws OseeCoreException; + public abstract String getWithClauseTxBranchFilter(String txsAlias, boolean deletedPredicate) throws OseeCoreException; public abstract String getTxBranchFilter(String txsAlias) throws OseeCoreException; |