本文整理汇总了Java中sun.awt.shell.ShellFolder.isLink方法的典型用法代码示例。如果您正苦于以下问题:Java ShellFolder.isLink方法的具体用法?Java ShellFolder.isLink怎么用?Java ShellFolder.isLink使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sun.awt.shell.ShellFolder
的用法示例。
在下文中一共展示了ShellFolder.isLink方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: changeDirectory
import sun.awt.shell.ShellFolder; //导入方法依赖的package包/类
private void changeDirectory(File dir) {
JFileChooser fc = getFileChooser();
// Traverse shortcuts on Windows
if (dir != null && FilePane.usesShellFolder(fc)) {
try {
ShellFolder shellFolder = ShellFolder.getShellFolder(dir);
if (shellFolder.isLink()) {
File linkedTo = shellFolder.getLinkLocation();
// If linkedTo is null we try to use dir
if (linkedTo != null) {
if (fc.isTraversable(linkedTo)) {
dir = linkedTo;
} else {
return;
}
} else {
dir = shellFolder;
}
}
} catch (FileNotFoundException ex) {
return;
}
}
fc.setCurrentDirectory(dir);
if (fc.getFileSelectionMode() == JFileChooser.FILES_AND_DIRECTORIES &&
fc.getFileSystemView().isFileSystem(dir)) {
setFileName(dir.getAbsolutePath());
}
}
示例2: changeDirectory
import sun.awt.shell.ShellFolder; //导入方法依赖的package包/类
private void changeDirectory(File dir) {
JFileChooser fc = getFileChooser();
// Traverse shortcuts on Windows
if (dir != null && FilePane.usesShellFolder(fc)) {
try {
ShellFolder shellFolder = ShellFolder.getShellFolder(dir);
if (shellFolder.isLink()) {
File linkedTo = shellFolder.getLinkLocation();
if (linkedTo != null && fc.isTraversable(linkedTo)) {
dir = linkedTo;
} else {
return;
}
}
} catch (FileNotFoundException ex) {
return;
}
}
fc.setCurrentDirectory(dir);
if (fc.getFileSelectionMode() == JFileChooser.FILES_AND_DIRECTORIES &&
fc.getFileSystemView().isFileSystem(dir)) {
setFileName(dir.getAbsolutePath());
}
}
示例3: changeDirectory
import sun.awt.shell.ShellFolder; //导入方法依赖的package包/类
private void changeDirectory(File dir) {
JFileChooser fc = getFileChooser();
// Traverse shortcuts on Windows
if (null != dir && FilePane.usesShellFolder(fc)) {
try {
ShellFolder shellFolder = ShellFolder.getShellFolder(dir);
if (shellFolder.isLink()) {
File linkedTo = shellFolder.getLinkLocation();
// If linkedTo is null we try to use dir
if (linkedTo != null) {
if (fc.isTraversable(linkedTo)) {
dir = linkedTo;
} else {
return;
}
} else {
dir = shellFolder;
}
}
} catch (FileNotFoundException ex) {
return;
}
}
fc.setCurrentDirectory(dir);
if (fc.getFileSelectionMode() == JFileChooser.FILES_AND_DIRECTORIES
&& fc.getFileSystemView().isFileSystem(dir)) {
setFileName(dir.getAbsolutePath());
}
}
示例4: main
import sun.awt.shell.ShellFolder; //导入方法依赖的package包/类
public static void main(String[] args) throws Exception {
if (OSInfo.getOSType() != OSInfo.OSType.WINDOWS) {
System.out.println("The test is applicable only for Windows. Skipped.");
return;
}
String tmpDir = System.getProperty("java.io.tmpdir");
if (tmpDir.length() == 0) { //'java.io.tmpdir' isn't guaranteed to be defined
tmpDir = System.getProperty("user.home");
}
final ShellFolder tmpFile = ShellFolder.getShellFolder(new File(tmpDir));
System.out.println("Temp directory: " + tmpDir);
System.out.println("Stress test was run");
Thread thread = new Thread() {
public void run() {
while (!isInterrupted()) {
ShellFolder.invoke(new Callable<Void>() {
public Void call() throws Exception {
synchronized (mux) {
tmpFile.isFileSystem();
tmpFile.isLink();
}
return null;
}
});
}
}
};
thread.start();
for (int i = 0; i < COUNT; i++) {
synchronized (mux) {
clearField(tmpFile, "cachedIsLink");
clearField(tmpFile, "cachedIsFileSystem");
}
tmpFile.isFileSystem();
tmpFile.isLink();
}
thread.interrupt();
thread.join();
System.out.println("Test passed successfully");
}