/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
class WindowsFileAttributeViews {
final boolean followLinks;
this.followLinks = followLinks;
}
try {
} catch (WindowsException x) {
return null; // keep compiler happy
}
}
/**
* Adjusts a Windows time for the FAT epoch.
*/
// 1/1/1980 in Windows Time
final long FAT_EPOCH = 119600064000000000L;
return FAT_EPOCH;
} else {
return time;
}
}
/**
* Parameter values in Windows times.
*/
long lastAccessTime,
long lastWriteTime)
throws IOException
{
long handle = -1L;
try {
int flags = FILE_FLAG_BACKUP_SEMANTICS;
flags);
} catch (WindowsException x) {
}
// update times
try {
} catch (WindowsException x) {
// If ERROR_INVALID_PARAMATER is returned and the volume is
// FAT then adjust to the FAT epoch and retry.
try {
// retry succeeded
x = null;
}
} catch (SecurityException ignore) {
} catch (WindowsException ignore) {
} catch (IOException ignore) {
// ignore exceptions to let original exception be thrown
}
}
if (x != null)
} finally {
}
}
{
// if all null then do nothing
createTime == null)
{
// no effect
return;
}
// permission check
file.checkWrite();
// update times
}
}
// the names of the DOS attribtues (includes basic)
super(file, followLinks);
}
return "dos";
}
throws IOException
{
return;
}
return;
}
return;
}
return;
}
}
throws IOException
{
return builder.unmodifiableMap();
}
/**
* Update DOS attributes
*/
throws IOException
{
file.checkWrite();
// GetFileAttribtues & SetFileAttributes do not follow links so when
// following links we need the final target
try {
if (enable) {
} else {
}
}
} catch (WindowsException x) {
// don't reveal target in exception
}
}
}
}
}
}
// package-private
// Copy given attributes to the file.
throws IOException
{
// copy DOS attributes to target
int flags = 0;
updateAttributes(flags, true);
// copy file times to target - must be done after updating FAT attributes
// as otherwise the last modified time may be wrong.
}
}
}
}
}