public static Object[] normalizedWriteArgs(Map<String,Object> keyMap,Object[] objects){
  int index=0;
  Boolean using80Delimiters=(Boolean)keyMap.get(Constants.USING_SMIS80_DELIMITERS);
  if (using80Delimiters != null && using80Delimiters) {
    for (    Object object : objects) {
      if (object instanceof CIMObjectPath) {
        String string=object.toString();
        if (string.contains(Constants.SMIS80_DELIMITER)) {
          continue;
        }
        if (!string.contains("SE_ReplicationGroup") && string.contains(Constants.PLUS)) {
          objects[index]=modifyForSMIS80(keyMap,(CIMObjectPath)object);
        }
      }
 else       if (object instanceof CIMArgument) {
        Object modifiedArgument=modifyAnyCIMObjectPaths(keyMap,object);
        if (modifiedArgument != null) {
          objects[index]=modifiedArgument;
        }
      }
 else       if (object instanceof CIMArgument[]) {
        boolean updated=false;
        CIMArgument[] arguments=(CIMArgument[])object;
        for (int argumentIndex=0; argumentIndex < arguments.length; argumentIndex++) {
          CIMArgument currentArgument=arguments[argumentIndex];
          CIMArgument modifiedArgument=modifyAnyCIMObjectPaths(keyMap,currentArgument);
          if (modifiedArgument != null) {
            arguments[argumentIndex]=modifiedArgument;
            updated=true;
          }
        }
        if (updated) {
          objects[index]=arguments;
        }
      }
      index++;
    }
  }
  return objects;
}

public static Object [ ] normalizedWriteArgs ( Map < String , Object > keyMap , Object [ ] objects ) { int index = 0 ; Boolean using80Delimiters = ( Boolean ) keyMap . get ( Constants . USING_SMIS80_DELIMITERS ) ; if ( using80Delimiters != null && using80Delimiters ) { for ( Object object : objects ) { if ( object instanceof CIMObjectPath ) { String string = object . toString ( ) ; if ( string . contains ( Constants . SMIS80_DELIMITER ) ) { continue ; } if ( ! string . contains ( "SE_ReplicationGroup" ) && string . contains ( Constants . PLUS ) ) { objects [ index ] = modifyForSMIS80 ( keyMap , ( CIMObjectPath ) object ) ; } } else if ( object instanceof CIMArgument ) { Object modifiedArgument = modifyAnyCIMObjectPaths ( keyMap , object ) ; if ( modifiedArgument != null ) { objects [ index ] = modifiedArgument ; } } else if ( object instanceof CIMArgument [ ] ) { boolean updated = false ; CIMArgument [ ] arguments = ( CIMArgument [ ] ) object ; for ( int argumentIndex = 0 ; argumentIndex < arguments . length ; argumentIndex ++ ) { CIMArgument currentArgument = arguments [ argumentIndex ] ; CIMArgument modifiedArgument = modifyAnyCIMObjectPaths ( keyMap , currentArgument ) ; if ( modifiedArgument != null ) { arguments [ argumentIndex ] = modifiedArgument ; updated = true ; } } if ( updated ) { objects [ index ] = arguments ; } } index ++ ; } } return objects ; }
this routine will take the arguments and transform any cimobjectpaths to smi8 . 0 delimiters if the the using_smis80_delimiters context flag is enabled .
