当前位置: 首页>>代码示例>>Java>>正文


Java XAttrCodec类代码示例

本文整理汇总了Java中org.apache.hadoop.fs.XAttrCodec的典型用法代码示例。如果您正苦于以下问题:Java XAttrCodec类的具体用法?Java XAttrCodec怎么用?Java XAttrCodec使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


XAttrCodec类属于org.apache.hadoop.fs包,在下文中一共展示了XAttrCodec类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: processOptions

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Override
protected void processOptions(LinkedList<String> args) throws IOException {
  name = StringUtils.popOptionWithArgument("-n", args);
  String v = StringUtils.popOptionWithArgument("-v", args);
  if (v != null) {
    value = XAttrCodec.decodeValue(v);
  }
  xname = StringUtils.popOptionWithArgument("-x", args);

  if (name != null && xname != null) {
    throw new HadoopIllegalArgumentException(
        "Can not specify both '-n name' and '-x name' option.");
  }
  if (name == null && xname == null) {
    throw new HadoopIllegalArgumentException(
        "Must specify '-n name' or '-x name' option.");
  }

  if (args.isEmpty()) {
    throw new HadoopIllegalArgumentException("<path> is missing.");
  }
  if (args.size() > 1) {
    throw new HadoopIllegalArgumentException("Too many arguments.");
  }
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:26,代码来源:XAttrCommands.java

示例2: xAttrsToJSON

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
/**
 * Converts xAttrs to a JSON object.
 *
 * @param xAttrs file xAttrs.
 * @param encoding format of xattr values.
 *
 * @return The JSON representation of the xAttrs.
 * @throws IOException 
 */
@SuppressWarnings({"unchecked", "rawtypes"})
private static Map xAttrsToJSON(Map<String, byte[]> xAttrs, 
    XAttrCodec encoding) throws IOException {
  Map jsonMap = new LinkedHashMap();
  JSONArray jsonArray = new JSONArray();
  if (xAttrs != null) {
    for (Entry<String, byte[]> e : xAttrs.entrySet()) {
      Map json = new LinkedHashMap();
      json.put(HttpFSFileSystem.XATTR_NAME_JSON, e.getKey());
      if (e.getValue() != null) {
        json.put(HttpFSFileSystem.XATTR_VALUE_JSON, 
            XAttrCodec.encodeValue(e.getValue(), encoding));
      }
      jsonArray.add(json);
    }
  }
  jsonMap.put(HttpFSFileSystem.XATTRS_JSON, jsonArray);
  return jsonMap;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:29,代码来源:FSOperations.java

示例3: getXAttrs

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Override
public Map<String, byte[]> getXAttrs(Path p, final List<String> names) 
    throws IOException {
  Preconditions.checkArgument(names != null && !names.isEmpty(), 
      "XAttr names cannot be null or empty.");
  Param<?,?>[] parameters = new Param<?,?>[names.size() + 1];
  for (int i = 0; i < parameters.length - 1; i++) {
    parameters[i] = new XAttrNameParam(names.get(i));
  }
  parameters[parameters.length - 1] = new XAttrEncodingParam(XAttrCodec.HEX);
  
  final HttpOpParam.Op op = GetOpParam.Op.GETXATTRS;
  return new FsPathResponseRunner<Map<String, byte[]>>(op, parameters, p) {
    @Override
    Map<String, byte[]> decodeResponse(Map<?, ?> json) throws IOException {
      return JsonUtil.toXAttrs(json);
    }
  }.run();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:20,代码来源:WebHdfsFileSystem.java

示例4: appendXAttrsToXml

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
private static void appendXAttrsToXml(ContentHandler contentHandler,
    List<XAttr> xAttrs) throws SAXException {
  for (XAttr xAttr: xAttrs) {
    contentHandler.startElement("", "", "XATTR", new AttributesImpl());
    XMLUtils.addSaxString(contentHandler, "NAMESPACE",
        xAttr.getNameSpace().toString());
    XMLUtils.addSaxString(contentHandler, "NAME", xAttr.getName());
    if (xAttr.getValue() != null) {
      try {
        XMLUtils.addSaxString(contentHandler, "VALUE",
            XAttrCodec.encodeValue(xAttr.getValue(), XAttrCodec.HEX));
      } catch (IOException e) {
        throw new SAXException(e);
      }
    }
    contentHandler.endElement("", "", "XATTR");
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:FSEditLogOp.java

示例5: readXAttrsFromXml

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
private static List<XAttr> readXAttrsFromXml(Stanza st)
    throws InvalidXmlException {
  if (!st.hasChildren("XATTR")) {
    return null;
  }

  List<Stanza> stanzas = st.getChildren("XATTR");
  List<XAttr> xattrs = Lists.newArrayListWithCapacity(stanzas.size());
  for (Stanza a: stanzas) {
    XAttr.Builder builder = new XAttr.Builder();
    builder.setNameSpace(XAttr.NameSpace.valueOf(a.getValue("NAMESPACE"))).
        setName(a.getValue("NAME"));
    String v = a.getValueOrNull("VALUE");
    if (v != null) {
      try {
        builder.setValue(XAttrCodec.decodeValue(v));
      } catch (IOException e) {
        throw new InvalidXmlException(e.toString());
      }
    }
    xattrs.add(builder.build());
  }
  return xattrs;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:25,代码来源:FSEditLogOp.java

示例6: testToJsonFromXAttrs

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Test
public void testToJsonFromXAttrs() throws IOException {
  String jsonString = 
      "{\"XAttrs\":[{\"name\":\"user.a1\",\"value\":\"0x313233\"}," +
      "{\"name\":\"user.a2\",\"value\":\"0x313131\"}]}";
  XAttr xAttr1 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a1").setValue(XAttrCodec.decodeValue("0x313233")).build();
  XAttr xAttr2 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a2").setValue(XAttrCodec.decodeValue("0x313131")).build();
  List<XAttr> xAttrs = Lists.newArrayList();
  xAttrs.add(xAttr1);
  xAttrs.add(xAttr2);
  
  Assert.assertEquals(jsonString, JsonUtil.toJsonString(xAttrs, 
      XAttrCodec.HEX));
}
 
开发者ID:naver,项目名称:hadoop,代码行数:17,代码来源:TestJsonUtil.java

示例7: testToXAttrMap

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Test
public void testToXAttrMap() throws IOException {
  String jsonString = 
      "{\"XAttrs\":[{\"name\":\"user.a1\",\"value\":\"0x313233\"}," +
      "{\"name\":\"user.a2\",\"value\":\"0x313131\"}]}";
  ObjectReader reader = new ObjectMapper().reader(Map.class);
  Map<?, ?> json = reader.readValue(jsonString);
  XAttr xAttr1 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a1").setValue(XAttrCodec.decodeValue("0x313233")).build();
  XAttr xAttr2 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a2").setValue(XAttrCodec.decodeValue("0x313131")).build();
  List<XAttr> xAttrs = Lists.newArrayList();
  xAttrs.add(xAttr1);
  xAttrs.add(xAttr2);
  Map<String, byte[]> xAttrMap = XAttrHelper.buildXAttrMap(xAttrs);
  Map<String, byte[]> parsedXAttrMap = JsonUtil.toXAttrs(json);
  
  Assert.assertEquals(xAttrMap.size(), parsedXAttrMap.size());
  Iterator<Entry<String, byte[]>> iter = xAttrMap.entrySet().iterator();
  while(iter.hasNext()) {
    Entry<String, byte[]> entry = iter.next();
    Assert.assertArrayEquals(entry.getValue(), 
        parsedXAttrMap.get(entry.getKey()));
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:26,代码来源:TestJsonUtil.java

示例8: getXAttrs

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Override
public Map<String, byte[]> getXAttrs(Path p, final List<String> names)
    throws IOException {
  Preconditions.checkArgument(names != null && !names.isEmpty(),
      "XAttr names cannot be null or empty.");
  Param<?,?>[] parameters = new Param<?,?>[names.size() + 1];
  for (int i = 0; i < parameters.length - 1; i++) {
    parameters[i] = new XAttrNameParam(names.get(i));
  }
  parameters[parameters.length - 1] = new XAttrEncodingParam(XAttrCodec.HEX);

  final HttpOpParam.Op op = GetOpParam.Op.GETXATTRS;
  return new FsPathResponseRunner<Map<String, byte[]>>(op, parameters, p) {
    @Override
    Map<String, byte[]> decodeResponse(Map<?, ?> json) throws IOException {
      return JsonUtilClient.toXAttrs(json);
    }
  }.run();
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:20,代码来源:WebHdfsFileSystem.java

示例9: testToXAttrMap

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Test
public void testToXAttrMap() throws IOException {
  String jsonString = 
      "{\"XAttrs\":[{\"name\":\"user.a1\",\"value\":\"0x313233\"}," +
      "{\"name\":\"user.a2\",\"value\":\"0x313131\"}]}";
  ObjectReader reader = new ObjectMapper().reader(Map.class);
  Map<?, ?> json = reader.readValue(jsonString);
  XAttr xAttr1 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a1").setValue(XAttrCodec.decodeValue("0x313233")).build();
  XAttr xAttr2 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a2").setValue(XAttrCodec.decodeValue("0x313131")).build();
  List<XAttr> xAttrs = Lists.newArrayList();
  xAttrs.add(xAttr1);
  xAttrs.add(xAttr2);
  Map<String, byte[]> xAttrMap = XAttrHelper.buildXAttrMap(xAttrs);
  Map<String, byte[]> parsedXAttrMap = JsonUtilClient.toXAttrs(json);
  
  Assert.assertEquals(xAttrMap.size(), parsedXAttrMap.size());
  Iterator<Entry<String, byte[]>> iter = xAttrMap.entrySet().iterator();
  while(iter.hasNext()) {
    Entry<String, byte[]> entry = iter.next();
    Assert.assertArrayEquals(entry.getValue(), 
        parsedXAttrMap.get(entry.getKey()));
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:26,代码来源:TestJsonUtil.java

示例10: testToXAttrMap

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Test
public void testToXAttrMap() throws IOException {
  String jsonString = 
      "{\"XAttrs\":[{\"name\":\"user.a1\",\"value\":\"0x313233\"}," +
      "{\"name\":\"user.a2\",\"value\":\"0x313131\"}]}";
  Map<?, ?> json = (Map<?, ?>)JSON.parse(jsonString);
  XAttr xAttr1 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a1").setValue(XAttrCodec.decodeValue("0x313233")).build();
  XAttr xAttr2 = (new XAttr.Builder()).setNameSpace(XAttr.NameSpace.USER).
      setName("a2").setValue(XAttrCodec.decodeValue("0x313131")).build();
  List<XAttr> xAttrs = Lists.newArrayList();
  xAttrs.add(xAttr1);
  xAttrs.add(xAttr2);
  Map<String, byte[]> xAttrMap = XAttrHelper.buildXAttrMap(xAttrs);
  Map<String, byte[]> parsedXAttrMap = JsonUtil.toXAttrs(json);
  
  Assert.assertEquals(xAttrMap.size(), parsedXAttrMap.size());
  Iterator<Entry<String, byte[]>> iter = xAttrMap.entrySet().iterator();
  while(iter.hasNext()) {
    Entry<String, byte[]> entry = iter.next();
    Assert.assertArrayEquals(entry.getValue(), 
        parsedXAttrMap.get(entry.getKey()));
  }
}
 
开发者ID:Nextzero,项目名称:hadoop-2.6.0-cdh5.4.3,代码行数:25,代码来源:TestJsonUtil.java

示例11: printXAttr

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
private void printXAttr(String name, byte[] value) throws IOException{
  if (value != null) {
    if (value.length != 0) {
      out.println(name + "=" + XAttrCodec.encodeValue(value, encoding));
    } else {
      out.println(name);
    }
  }
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:10,代码来源:XAttrCommands.java

示例12: setXAttr

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
@Override
public void setXAttr(Path f, String name, byte[] value,
    EnumSet<XAttrSetFlag> flag) throws IOException {
  Map<String, String> params = new HashMap<String, String>();
  params.put(OP_PARAM, Operation.SETXATTR.toString());
  params.put(XATTR_NAME_PARAM, name);
  if (value != null) {
    params.put(XATTR_VALUE_PARAM, 
        XAttrCodec.encodeValue(value, XAttrCodec.HEX));
  }
  params.put(XATTR_SET_FLAG_PARAM, EnumSetParam.toString(flag));
  HttpURLConnection conn = getConnection(Operation.SETXATTR.getMethod(),
      params, f, true);
  HttpExceptionUtils.validateResponse(conn, HttpURLConnection.HTTP_OK);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:16,代码来源:HttpFSFileSystem.java

示例13: createXAttrMap

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
/** Convert xAttrs json to xAttrs map */
private Map<String, byte[]> createXAttrMap(JSONArray jsonArray) 
    throws IOException {
  Map<String, byte[]> xAttrs = Maps.newHashMap();
  for (Object obj : jsonArray) {
    JSONObject jsonObj = (JSONObject) obj;
    final String name = (String)jsonObj.get(XATTR_NAME_JSON);
    final byte[] value = XAttrCodec.decodeValue(
        (String)jsonObj.get(XATTR_VALUE_JSON));
    xAttrs.put(name, value);
  }

  return xAttrs;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:15,代码来源:HttpFSFileSystem.java

示例14: FSSetXAttr

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
public FSSetXAttr(String path, String name, String encodedValue, 
    EnumSet<XAttrSetFlag> flag) throws IOException {
  this.path = new Path(path);
  this.name = name;
  this.value = XAttrCodec.decodeValue(encodedValue);
  this.flag = flag;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:FSOperations.java

示例15: decodeXAttrValue

import org.apache.hadoop.fs.XAttrCodec; //导入依赖的package包/类
/** Decode xattr value from string */
private byte[] decodeXAttrValue(String value) throws IOException {
  if (value != null) {
    return XAttrCodec.decodeValue(value);
  } else {
    return new byte[0];
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:9,代码来源:TestHttpFSServer.java


注:本文中的org.apache.hadoop.fs.XAttrCodec类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。