All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xyz.cofe.fs.unix.impl.FileStatImpl Maven / Gradle / Ivy

The newest version!
/*
 * The MIT License
 *
 * Copyright 2014 Kamnev Georgiy ([email protected]).
 *
 * Данная лицензия разрешает, безвозмездно, лицам, получившим копию данного программного 
 * обеспечения и сопутствующей документации (в дальнейшем именуемыми "Программное Обеспечение"), 
 * использовать Программное Обеспечение без ограничений, включая неограниченное право на 
 * использование, копирование, изменение, объединение, публикацию, распространение, сублицензирование 
 * и/или продажу копий Программного Обеспечения, также как и лицам, которым предоставляется 
 * данное Программное Обеспечение, при соблюдении следующих условий:
 *
 * Вышеупомянутый копирайт и данные условия должны быть включены во все копии 
 * или значимые части данного Программного Обеспечения.
 *
 * ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ ЛЮБОГО ВИДА ГАРАНТИЙ, 
 * ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ГАРАНТИЯМИ ТОВАРНОЙ ПРИГОДНОСТИ, 
 * СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И НЕНАРУШЕНИЯ ПРАВ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ 
 * ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО ИСКАМ О ВОЗМЕЩЕНИИ УЩЕРБА, УБЫТКОВ 
 * ИЛИ ДРУГИХ ТРЕБОВАНИЙ ПО ДЕЙСТВУЮЩИМ КОНТРАКТАМ, ДЕЛИКТАМ ИЛИ ИНОМУ, ВОЗНИКШИМ ИЗ, ИМЕЮЩИМ 
 * ПРИЧИНОЙ ИЛИ СВЯЗАННЫМ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 
 * ИЛИ ИНЫМИ ДЕЙСТВИЯМИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.
 */

package xyz.cofe.fs.unix.impl;


import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Kamnev Georgiy ([email protected])
 */
public class FileStatImpl 
implements 
    xyz.cofe.unix.libc.FileStat,
    xyz.cofe.fs.UnixFileStat
{
    //
    private static void logFine(String message,Object ... args){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.FINE, message, args);
    }
    
    private static void logFiner(String message,Object ... args){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.FINER, message, args);
    }
    
    private static void logFinest(String message,Object ... args){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.FINEST, message, args);
    }
    
    private static void logInfo(String message,Object ... args){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.INFO, message, args);
    }

    private static void logWarning(String message,Object ... args){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.WARNING, message, args);
    }
    
    private static void logSevere(String message,Object ... args){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.SEVERE, message, args);
    }

    private static void logException(Throwable ex){
        Logger.getLogger(FileStatImpl.class.getName()).log(Level.SEVERE, null, ex);
    }
    //
    
    private xyz.cofe.unix.libc.FileStat srcLibc = null;
    private xyz.cofe.fs.UnixFileStat srcFS = null;
    
    public FileStatImpl(xyz.cofe.unix.libc.FileStat src){
        this.srcLibc = src;
    }

    public FileStatImpl(xyz.cofe.fs.UnixFileStat src){
        this.srcFS = src;
    }

    @Override
    public long getSize() {
        return srcLibc!=null ? srcLibc.getSize() : srcFS.getSize();
    }

    @Override
    public int getMode() {
        return srcLibc!=null ? srcLibc.getMode() : srcFS.getMode();
    }

    @Override
    public long getINO() {
        return srcLibc!=null ? srcLibc.getINO() : srcFS.getINO();
    }

    @Override
    public int getNlink() {
        return srcLibc!=null ? srcLibc.getNlink() : srcFS.getNlink();
    }

    @Override
    public int getUID() {
        return srcLibc!=null ? srcLibc.getUID() : srcFS.getUID();
    }

    @Override
    public int getGID() {
        return srcLibc!=null ? srcLibc.getGID() : srcFS.getGID();
    }

    @Override
    public long getAccessTime() {
        return srcLibc!=null ? srcLibc.getAccessTime() : srcFS.getAccessTime();
    }

    @Override
    public long getModifyTime() {
        return srcLibc!=null ? srcLibc.getModifyTime() : srcFS.getModifyTime();
    }

    @Override
    public long getCreateTime() {
        return srcLibc!=null ? srcLibc.getCreateTime() : srcFS.getCreateTime();
    }

    @Override
    public long getBlocks() {
        return srcLibc!=null ? srcLibc.getBlocks() : srcFS.getBlocks();
    }

    @Override
    public long getBlockSize() {
        return srcLibc!=null ? srcLibc.getBlockSize() : srcFS.getBlockSize();
    }

    @Override
    public long getDev() {
        return srcLibc!=null ? srcLibc.getDev() : srcFS.getDev();
    }

    @Override
    public long getRDev() {
        return srcLibc!=null ? srcLibc.getRDev() : srcFS.getRDev();
    }

    @Override
    public int getMajor(long dev) {
        return srcLibc!=null ? srcLibc.getMajor(dev) : srcFS.getMajor(dev);
    }

    @Override
    public int getMinor(long dev) {
        return srcLibc!=null ? srcLibc.getMinor(dev) : srcFS.getMinor(dev);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy