要在工件内进行搜索,请将标志 SearchQuery.SEARCH_WITHIN_ARTIFACTS_FLAG 传递至 SearchQuery.setSearchModes(int) 方法。与查询相匹配的工件将由 AssetSearchResult.getMatchingArtifacts() 方法返回。
RAMAssetQueryBuilder query = (RAMAssetQueryBuilder)session.createAssetQuery("text that would be in my artifact");
query.setSearchModes(SearchQuery.SEARCH_WITHIN_ARTIFACTS_FLAG);
SearchResult result = session.getAssets(query);
AssetSearchResult[] results = result.getAssetSearchResults();
asset = (RAMAsset)results[0].getAsset();
ArtifactSearchResult[] artifactResults = results[0].getMatchingArtifacts();
RAMArtifact artifact = (RAMArtifact)artifactResults[0].getArtifact();