-
- }
-
- NodeIterator listBundleArtifacts(Session session)
- throws RepositoryException {
- QueryManager queryManager = session.getWorkspace().getQueryManager();
- QueryObjectModelFactory factory = queryManager.getQOMFactory();
-
- final String bundleArtifactsSelector = "bundleArtifacts";
- Selector source = factory.selector(SlcTypes.SLC_BUNDLE_ARTIFACT,
- bundleArtifactsSelector);
-
- String artifactTxtVal = artifactTxt.getText();
-
- DynamicOperand propName = factory.propertyValue(
- source.getSelectorName(), SlcNames.SLC_SYMBOLIC_NAME);
- StaticOperand propValue = factory.bindVariable("'%" + artifactTxtVal
- + "%'");
- Constraint constraint = factory.comparison(propName,
- QueryObjectModelFactory.JCR_OPERATOR_LIKE, propValue);
-
- Ordering order = factory.ascending(factory.propertyValue(
- bundleArtifactsSelector, SlcNames.SLC_SYMBOLIC_NAME));
- Ordering[] orderings = { order };
-
- QueryObjectModel query = factory.createQuery(source, constraint,
- orderings, null);
-
- QueryResult result = query.execute();
- return result.getNodes();
- }
-
- private NodeIterator getArtifactsWithWhereClause(String whereClause) {
- StringBuffer strBuf = new StringBuffer();
- strBuf.append("Select * FROM [" + SlcTypes.SLC_BUNDLE_ARTIFACT
- + "] AS bundleArtifacts");
- if (whereClause != null && !"".equals(whereClause.trim())) {
- strBuf.append(" WHERE ");
- strBuf.append(whereClause);
- }
- strBuf.append(" ORDER BY ");
- strBuf.append("bundleArtifacts.[" + SlcNames.SLC_SYMBOLIC_NAME + "] ");
- strBuf.append("ASC");
- try {
- if (log.isTraceEnabled())
- log.trace("Get artifacts query : " + strBuf.toString());
- Query query = session.getWorkspace().getQueryManager()
- .createQuery(strBuf.toString(), Query.JCR_SQL2);
- return query.execute().getNodes();
- } catch (RepositoryException e) {
- throw new SlcException(
- "Unexpected error while retrieving list of artifacts", e);
- }
- }
-
- private String buildWhereClause() {
- StringBuffer whereClause = new StringBuffer();
-
- String artifactTxtVal = artifactTxt.getText();
- if (!"".equals(artifactTxtVal)) {
- whereClause.append("bundleArtifacts.[" + SlcNames.SLC_SYMBOLIC_NAME
- + "] like ");
- whereClause.append("'%" + artifactTxtVal + "%'");
- }
- return whereClause.toString();