本文整理了Java中org.apache.jackrabbit.vault.fs.api.WorkspaceFilter.getFilterSets()
方法的一些代码示例,展示了WorkspaceFilter.getFilterSets()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WorkspaceFilter.getFilterSets()
方法的具体详情如下:
包路径:org.apache.jackrabbit.vault.fs.api.WorkspaceFilter
类名称:WorkspaceFilter
方法名:getFilterSets
[英]Returns a list of path filter sets for node items.
[中]返回节点项的路径筛选器集列表。
代码示例来源:origin: net.adamcin.granite/granite-client-packman
public static WspFilter adaptWorkspaceFilter(WorkspaceFilter filter) {
List<Root> roots = new ArrayList<Root>();
for (PathFilterSet filterSet : filter.getFilterSets()) {
roots.add(adaptFilterSet(filterSet));
}
return new WspFilter(roots);
}
代码示例来源:origin: nateyolles/publick-sling-blog
public static String[] getPaths(MetaInf metaInf) {
if (metaInf == null) {
return null;
}
WorkspaceFilter filter = metaInf.getFilter();
if (filter == null) {
filter = new DefaultWorkspaceFilter();
}
List<PathFilterSet> filterSets = filter.getFilterSets();
String[] paths = new String[filterSets.size()];
for (int i = 0; i < paths.length; i++) {
paths[i] = filterSets.get(i).getRoot();
}
return paths;
}
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
/**
* Detects the package type based on the workspace filter.
* @param filter the workspace filter
* @return the package type
*/
private static PackageType detectPackageType(WorkspaceFilter filter) {
boolean hasApps = false;
boolean hasOther = false;
for (PathFilterSet p: filter.getFilterSets()) {
if ("cleanup".equals(p.getType())) {
continue;
}
String root = p.getRoot();
if ("/apps".equals(root) || root.startsWith("/apps/") || "/libs".equals(root) || root.startsWith("/libs/")) {
hasApps = true;
} else {
hasOther = true;
}
}
if (hasApps && !hasOther) {
return PackageType.APPLICATION;
} else if (hasOther && !hasApps) {
return PackageType.CONTENT;
}
return PackageType.MIXED;
}
代码示例来源:origin: org.apache.sling/org.apache.sling.distribution.core
public static String[] getPaths(MetaInf metaInf) {
if (metaInf == null) {
return null;
}
WorkspaceFilter filter = metaInf.getFilter();
if (filter == null) {
filter = new DefaultWorkspaceFilter();
}
List<PathFilterSet> filterSets = filter.getFilterSets();
String[] paths = new String[filterSets.size()];
for (int i = 0; i < paths.length; i++) {
paths[i] = filterSets.get(i).getRoot();
}
return paths;
}
代码示例来源:origin: Adobe-Consulting-Services/acs-aem-commons
/**
* {@inheritDoc}
*/
public String getSuccessJSON(final JcrPackage jcrPackage) throws RepositoryException {
final JsonObject json = new JsonObject();
json.addProperty(KEY_STATUS, "success");
json.addProperty(KEY_PATH, jcrPackage.getNode().getPath());
JsonArray filterSetsArray = new JsonArray();
json.add(KEY_FILTER_SETS, filterSetsArray);
final List<PathFilterSet> filterSets = jcrPackage.getDefinition().getMetaInf().getFilter().getFilterSets();
for (final PathFilterSet filterSet : filterSets) {
final JsonObject jsonFilterSet = new JsonObject();
jsonFilterSet.addProperty(KEY_IMPORT_MODE, filterSet.getImportMode().name());
jsonFilterSet.addProperty(KEY_ROOT_PATH, filterSet.getRoot());
filterSetsArray.add(jsonFilterSet);
}
return json.toString();
}
代码示例来源:origin: org.apache.sling/org.apache.sling.distribution.core
String root = getPackageRoot(filter.getFilterSets(), packageRoots);
opts.setRootPath(root);
opts.setMountPath(root);
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
public static void saveLegacyFilter(WorkspaceFilter filter, Node defNode, boolean save)
throws RepositoryException {
// delete all nodes first
for (NodeIterator iter = defNode.getNodes(); iter.hasNext();) {
iter.nextNode().remove();
}
int nr = 0;
for (PathFilterSet set: filter.getFilterSets()) {
Node setNode = defNode.addNode("f" + nr);
setNode.setProperty(JcrPackageDefinitionImpl.PN_ROOT, set.getRoot());
int eNr = 0;
for (ItemFilterSet.Entry e: set.getEntries()) {
// expect path filter
if (!(e.getFilter() instanceof DefaultPathFilter)) {
throw new IllegalArgumentException("Can only handle default path filters.");
}
Node eNode = setNode.addNode("f" + eNr);
eNode.setProperty(JcrPackageDefinitionImpl.PN_TYPE, e.isInclude() ? "include" : "exclude");
eNode.setProperty(JcrPackageDefinitionImpl.PN_PATTERN, ((DefaultPathFilter) e.getFilter()).getPattern());
eNr++;
}
nr++;
}
if (save) {
defNode.getSession().save();
}
}
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
public static void saveFilter(WorkspaceFilter filter, Node defNode, boolean save)
throws RepositoryException {
if (defNode.hasNode(JcrPackageDefinitionImpl.NN_FILTER)) {
defNode.getNode(JcrPackageDefinitionImpl.NN_FILTER).remove();
}
Node filterNode = defNode.addNode(JcrPackageDefinitionImpl.NN_FILTER);
int nr = 0;
for (PathFilterSet set: filter.getFilterSets()) {
Node setNode = filterNode.addNode("f" + nr);
setNode.setProperty(JcrPackageDefinitionImpl.PN_ROOT, set.getRoot());
setNode.setProperty(JcrPackageDefinitionImpl.PN_MODE, set.getImportMode().name().toLowerCase());
List<String> rules = new LinkedList<String>();
for (ItemFilterSet.Entry e: set.getEntries()) {
// expect path filter
if (!(e.getFilter() instanceof DefaultPathFilter)) {
throw new IllegalArgumentException("Can only handle default path filters.");
}
String type = e.isInclude() ? "include" : "exclude";
String patt = ((DefaultPathFilter) e.getFilter()).getPattern();
rules.add(type + ":" + patt);
}
setNode.setProperty(JcrPackageDefinitionImpl.PN_RULES, rules.toArray(new String[rules.size()]));
nr++;
}
if (save) {
defNode.getSession().save();
}
}
代码示例来源:origin: net.adamcin.granite/granite-client-packman
protected static ValidationResult checkForbiddenFilterRootPrefix(ValidationOptions options, VaultPackage pack) {
List<String> forbiddenFilterRootPrefixes = options.getForbiddenFilterRootPrefixes();
if (forbiddenFilterRootPrefixes != null) {
for (String rootPrefix : forbiddenFilterRootPrefixes) {
String trimmed = rootPrefix.trim();
if (trimmed.isEmpty()) {
continue;
}
final String noTrailingSlash = trimmed.replaceAll("/*$", "").replaceAll("^/*", "/");
final String withTrailingSlash = noTrailingSlash.replaceAll("/*$", "/");
for (PathFilterSet filterSet : pack.getMetaInf().getFilter().getFilterSets()) {
if (filterSet.getRoot().equals(noTrailingSlash)
|| filterSet.getRoot().startsWith(withTrailingSlash)) {
WspFilter.Root invalidRoot = WspFilter.adaptFilterSet(filterSet);
return ValidationResult.forbiddenRootPrefix(rootPrefix, invalidRoot);
}
}
}
}
return ValidationResult.success();
}
代码示例来源:origin: net.adamcin.oakpal/oakpal-core
@Override
public void beforeExtract(final PackageId packageId, final Session inspectSession,
final PackageProperties packageProperties, final MetaInf metaInf,
final List<PackageId> subpackages) throws RepositoryException {
final WorkspaceFilter filter = metaInf.getFilter();
if (filter == null || filter.getFilterSets().isEmpty()) {
if (!allowEmptyFilter) {
reportViolation(Violation.Severity.MAJOR,
"empty workspace filter is not allowed", packageId);
}
} else {
for (PathFilterSet filterSet : filter.getFilterSets()) {
if (filterSet.getImportMode() != ImportMode.REPLACE) {
reportViolation(importModeSeverity,
String.format("non-default import mode %s defined for filterSet with root %s",
filterSet.getImportMode(), filterSet.getRoot()),
packageId);
}
if (!allowRootFilter && "/".equals(filterSet.getRoot())) {
reportViolation(Violation.Severity.MAJOR,
"root filter sets are not allowed", packageId);
}
}
}
}
}
代码示例来源:origin: nateyolles/publick-sling-blog
public static ExportOptions getExportOptions(WorkspaceFilter filter, String[] packageRoots,
String packageGroup,
String packageName,
String packageVersion) {
DefaultMetaInf inf = new DefaultMetaInf();
ExportOptions opts = new ExportOptions();
inf.setFilter(filter);
Properties props = new Properties();
props.setProperty(VaultPackage.NAME_GROUP, packageGroup);
props.setProperty(VaultPackage.NAME_NAME, packageName);
props.setProperty(VaultPackage.NAME_VERSION, packageVersion);
inf.setProperties(props);
opts.setMetaInf(inf);
String root = getPackageRoot(filter.getFilterSets(), packageRoots);
opts.setRootPath(root);
opts.setMountPath(root);
return opts;
}
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
for (PathFilterSet sets: filter.getFilterSets()) {
String rootPath = sets.getRoot();
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
ser.startElement(null, null, TAG_REGISTRY_METADATA, attrs);
if (filter != null && !filter.getFilterSets().isEmpty()) {
ser.startElement(null, null, TAG_WORKSPACEFILTER, null);
for (PathFilterSet pfs : filter.getFilterSets()) {
attrs = new AttributesImpl();
attrs.addAttribute(null, null, ATTR_ROOT, "CDATA", pfs.getRoot());
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
for (PathFilterSet root : pkg.getArchive().getMetaInf().getFilter().getFilterSets()) {
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
if (filter == null || filter.getFilterSets().isEmpty()) {
log.info("Refusing to create snapshot {} due to empty filters", id);
return null;
for (PathFilterSet set: filter.getFilterSets()) {
if (("".equals(set.getRoot()) || "/".equals(set.getRoot())) && set.getEntries().isEmpty()) {
log.info("Refusing to create snapshot {} due to / only filter", id);
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
PackageId id = new PackageId(group, name, version);
Set<String> rts = new HashSet<String>();
for (PathFilterSet p: filter.getFilterSets()) {
rts.add(p.getRoot());
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
for (PathFilterSet root: a.getMetaInf().getFilter().getFilterSets()) {
代码示例来源:origin: org.apache.jackrabbit.vault/org.apache.jackrabbit.vault
for (PathFilterSet set: filter.getFilterSets()) {
filterTree.put(set.getRoot(), set);
if (filter!=null && filter.getFilterSets() != null && filter.getFilterSets().size() > 0 ) {
root = postFilter(root);
内容来源于网络,如有侵权,请联系作者删除!