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.executionengine.physicalLayer.relationalOperators;
 
 
 public class PONative extends PhysicalOperator {
     
     private static final long serialVersionUID = 1L;
 
     String nativeMRjar;
     String[] params;
 
     public PONative(OperatorKey k) {
         super(k);
     }
 
     @Override
     public void visit(PhyPlanVisitor vthrows VisitorException {
         v.visitNative(this);
     }
 
     @Override
     public String name() {
         return getAliasString() + "Native" + "('hadoop jar "
         +  + " " + Utils.getStringFromArray(getParams()) + "')" 
         + " - " + .toString();
     }
 
     public String getNativeMRjar() {
         return ;
     }
 
     public void setNativeMRjar(String nativeMRjar) {
         this. = nativeMRjar;
     }
 
     public String[] getParams() {
         unquotePropertyParams();
         return ;
     }

    
if there is a argument that starts with "-D", unquote the value part to support use case in PIG-1917
 
     private void unquotePropertyParams() {
         for(int i=0; i<.i++){
             String param = [i];
             if(param.startsWith("-D")){
                 int equalPos = param.indexOf('=');
                 //to unquote, there should be a '=', then at least two quotes
                 if(equalPos == -1 || equalPos >= param.length() - 3)
                     continue;
 
                 if(checkQuote(equalPos+1, param,'\'')
                         || checkQuote(equalPos + 1, param'"')
                 ){
                     //found quoted value part, remove the quotes
                     [i] = param.substring(0, equalPos + 1) 
                      + param.substring(equalPos + 2, param.length() - 1);
                 }
             }
         }
     }
 
     private boolean checkQuote(int iString paramchar quote) {
         return param.charAt(i) == quote && param.charAt(param.length()-1) == quote;
     }
 
     public void setParams(String[] params) {
         this. = params;
     }
 
     @Override
     public boolean supportsMultipleInputs() {
         return false;
     }
 
    @Override
    public boolean supportsMultipleOutputs() {
        return false;
    }
    @Override
    public Tuple illustratorMarkup(Object inObject outint eqClassIndex) {
        return null;
    }
New to GrepCode? Check out our FAQ X