Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed to the Apache Software Foundation (ASF) under one
   * or more contributor license agreements.  See the NOTICE file
   * distributed with this work for additional information
   * regarding copyright ownership.  The ASF licenses this file
   * to you under the Apache License, Version 2.0 (the
   * "License"); you may not use this file except in compliance
   * with the License.  You may obtain a copy of the License at
   *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package org.apache.pig.backend.hadoop.datastorage;
 
 import java.util.Map;
 
 
 
 public abstract class HPath implements ElementDescriptor {
 
     protected Path path;
     protected HDataStorage fs;
 
     public HPath(HDataStorage fsPath parentPath child) {
         this. = new Path(parentchild);
         this. = fs;
     }
 
     public HPath(HDataStorage fsString parentString child) {
         this(fsnew Path(parent), new Path(child));
     }
     
     public HPath(HDataStorage fsPath parentString child) {
         this(fsparentnew Path(child));
     }
 
     public HPath(HDataStorage fsString parentPath child) {
         this(fsnew Path(parent), child);
     }
         
     public HPath(HDataStorage fsString pathString) {
         this(fsnew Path(pathString));
     }
         
     public HPath(HDataStorage fsPath path) {
         this. = path;
         this. = fs;
     }
 
     public DataStorage getDataStorage() {
         return ;
     }
     
     public abstract OutputStream create(Properties configuration
              throws IOException;
     
     public void copy(ElementDescriptor dstName,
                      Properties dstConfiguration,
                      boolean removeSrc)
             throws IOException {
         FileSystem srcFS = this..getHFS();
         FileSystem dstFS = ((HPath)dstName)..getHFS();
         
         Path srcPath = this.;
         Path dstPath = ((HPath)dstName).;
         
         boolean result = FileUtil.copy(srcFS,
                                        srcPath,
                                        dstFS,
                                        dstPath,
                                        false,
                                        new Configuration());
         
         if (!result) {
             int errCode = 2097;
             String msg = "Failed to copy from: " + this.toString() +
             " to: " + dstName.toString();
             throw new ExecException(msgerrCode.);
         }
     }
    
    public abstract InputStream open() throws IOException;
    public abstract SeekableInputStream sopen() throws IOException;
    public boolean exists() throws IOException {
        return .getHFS().exists();
    }
    
    public void rename(ElementDescriptor newName
             throws IOException {
        if (newName != null) {
            .getHFS().rename(, ((HPath)newName).);
        }
    }
    public void delete() throws IOException {
        // the file is removed and not placed in the trash bin
        .getHFS().delete(true);
    }
    public Properties getConfiguration() throws IOException {
        HConfiguration props = new HConfiguration();
        long blockSize = .getHFS().getFileStatus().getBlockSize();
        short replication = .getHFS().getFileStatus().getReplication();
        
        props.setProperty(, (Long.valueOf(blockSize)).toString());
        props.setProperty(, (Short.valueOf(replication)).toString());
        
        return props;
    }
    public void updateConfiguration(Properties newConfigthrows IOException {
        if (newConfig == null) {
            return;
        }
        
        String blkReplStr = newConfig.getProperty();
        
        .getHFS().setReplication(
                                   new Short(blkReplStr).shortValue());    
    }
    public Map<StringObjectgetStatistics() throws IOException {
        HashMap<StringObjectprops = new HashMap<StringObject>();
        
        FileStatus fileStatus = .getHFS().getFileStatus();
        props.put(fileStatus.getBlockSize());
        props.put(fileStatus.getReplication());
        props.put(fileStatus.getLen());
        props.put(fileStatus.getModificationTime());
        
        return props;
    }
    public OutputStream create() throws IOException {
        return create(null);
    }
    public void copy(ElementDescriptor dstName,
                     boolean removeSrc
            throws IOException {
        copy(dstNamenullremoveSrc);
    }
    
    public Path getPath() {
        return ;
    }
    
    public FileSystem getHFS() {
        return .getHFS();
    }
    public boolean systemElement() {
        return ( != null && 
                (.getName().startsWith("_") ||
                 .getName().startsWith(".")));
    }
   
    @Override
    public String toString() {
        return .makeQualified(getHFS()).toString();
    }
    
    @Override
    public boolean equals(Object obj) {
        if (! (obj instanceof HPath)) {
            return false;
        }
        
        return this..equals(((HPath)obj).);  
    }
    
    public int compareTo(ElementDescriptor other) {
        return .compareTo(((HPath)other).);
    }
    
    @Override
    public int hashCode() {
        return this..hashCode();
    }
New to GrepCode? Check out our FAQ X