Node.js fs.Dirent.isFIFO() Method
The fs.Dirent.isFIFO() method is an inbuilt application programming interface of class fs.Dirent within File System module which is used to check if the particular dirent describes a first in first out pipe or not.
Syntax:
const dirent.isFIFO()
Parameter: This method does not accept any parameter.
Return Value: This method returns true if the particular dirent describes a first in first out pipe otherwise false.
Example 1: The below program illustrates the use of fs.dirent.isFIFO() method in Node.js:
Filename: index.js
// Node.js program to demonstrate the
// dirent.isFIFO() method
const fs = require('fs');
// Initiating async function
async function stop(path) {
// Creating and initiating FIFO's
// underlying resource handle
const dir = await fs.promises.opendir(path);
// Synchronously reading the FIFO's
// underlying resource handle
// using readSync() method
for (let i = 0; i <= 3; i++) {
// Checking if the particular dirent is
// FIFO or not by using isFIFO() method
const value = (dir.readSync()).isFIFO();
// Display the result
console.log(dir.readSync());
console.log(value);
}
}
// Catching error
stop('./').catch(console.error);
Run the index.js file using the following command:
node index.js
Output:
Dirent { name: 'cert.cer', [Symbol(type)]: 1 } false Dirent { name: 'certificate1.cer', [Symbol(type)]: 1 } false Dirent { name: 'filename.txt', [Symbol(type)]: 1 } false Dirent { name: 'GFG.java', [Symbol(type)]: 1 } false
Example 2: The below program illustrates the use of fs.dirent.isFIFO() method in Node.js:
Filename: index.js
// Node.js program to demonstrate the
// dirent.isFIFO() method
const fs = require('fs');
// Initiating async function
async function stop(path) {
let dir = null;
try {
// Creating and initiating directory's
// underlying resource handle
dir = await fs.promises.opendir(
new URL('file:///F:/java/'));
// Synchronously reading the FIFO's
// underlying resource handle
// using readSync() method
for (let i = 0; i <= 3; i++) {
// Checking if the particular dirent is
// FIFO or not by using isFIFO() method
const value = (dir.readSync()).isFIFO();
// Display the result
console.log(dir.readSync());
console.log(value);
}
} finally {
if (dir) {
// Display the result
console.log("dir is closed successfully");
// Synchronously closeSyncing the directory's
// underlying resource handle
const promise = dir.closeSync();
}
}
}
// Catching error
stop('./').catch(console.error);
Run index.js file using the following command:
node index.js
Output:
Dirent { name: 'cert.cer', [Symbol(type)]: 1 } false Dirent { name: 'certificate1.cer', [Symbol(type)]: 1 } false Dirent { name: 'features', [Symbol(type)]: 2 } false Dirent { name: 'GFG.class', [Symbol(type)]: 1 } false dir is closed successfully
Reference: https://nodejs.org/dist/latest-v12.x/docs/api/fs.html#fs_dirent_isfifo