public static FileAttribute<?>[] consolidate(final Map<String, Object> props, final FileAttribute<?>... attrs) { if (props == null || props.size() == 0) { return attrs; } final Map<String, Object> temp = new HashMap<String, Object>(props); for (final FileAttribute<?> attr : attrs) { temp.put(attr.name(), attr.value()); } final FileAttribute<?>[] result = new FileAttribute<?>[temp.size()]; int i = -1; for (final Map.Entry<String, Object> attr : temp.entrySet()) { result[++i] = new FileAttribute<Object>() { @Override public String name() { return attr.getKey(); } @Override public Object value() { return attr.getValue(); } }; } return result; }
public static FileAttribute<?>[] consolidate(final Map<String, Object> props, final FileAttribute<?>... attrs) { if (props == null || props.size() == 0) { return attrs; } final Map<String, Object> temp = new HashMap<String, Object>(props); for (final FileAttribute<?> attr : attrs) { temp.put(attr.name(), attr.value()); } final FileAttribute<?>[] result = new FileAttribute<?>[temp.size()]; int i = -1; for (final Map.Entry<String, Object> attr : temp.entrySet()) { result[++i] = new FileAttribute<Object>() { @Override public String name() { return attr.getKey(); } @Override public Object value() { return attr.getValue(); } }; } return result; }
@Override public Path setAttributes(final Path path, final FileAttribute<?>... attrs) throws UnsupportedOperationException, IllegalArgumentException, ClassCastException, IOException, SecurityException { Path out = null; for (final FileAttribute<?> attr : attrs) { out = Files.setAttribute(path, attr.name(), attr.value()); } return out; }
if (attr.value() instanceof Serializable) { hasContent = true; properties.put(attr.name(), attr.value());
if (attr.value() instanceof Serializable) { hasContent = true; properties.put(attr.name(), attr.value());