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


Java ApplicationACLMapProto类代码示例

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


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

示例1: initApplicationACLs

import org.apache.hadoop.yarn.proto.YarnProtos.ApplicationACLMapProto; //导入依赖的package包/类
private void initApplicationACLs() {
  if (this.applicationACLS != null) {
    return;
  }
  RegisterApplicationMasterResponseProtoOrBuilder p = viaProto ? proto
      : builder;
  List<ApplicationACLMapProto> list = p.getApplicationACLsList();
  this.applicationACLS = new HashMap<ApplicationAccessType, String>(list
      .size());

  for (ApplicationACLMapProto aclProto : list) {
    this.applicationACLS.put(ProtoUtils.convertFromProtoFormat(aclProto
        .getAccessType()), aclProto.getAcl());
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:16,代码来源:RegisterApplicationMasterResponsePBImpl.java

示例2: addApplicationACLs

import org.apache.hadoop.yarn.proto.YarnProtos.ApplicationACLMapProto; //导入依赖的package包/类
private void addApplicationACLs() {
  maybeInitBuilder();
  builder.clearApplicationACLs();
  if (applicationACLS == null) {
    return;
  }
  Iterable<? extends ApplicationACLMapProto> values
      = new Iterable<ApplicationACLMapProto>() {

    @Override
    public Iterator<ApplicationACLMapProto> iterator() {
      return new Iterator<ApplicationACLMapProto>() {
        Iterator<ApplicationAccessType> aclsIterator = applicationACLS
            .keySet().iterator();

        @Override
        public boolean hasNext() {
          return aclsIterator.hasNext();
        }

        @Override
        public ApplicationACLMapProto next() {
          ApplicationAccessType key = aclsIterator.next();
          return ApplicationACLMapProto.newBuilder().setAcl(
              applicationACLS.get(key)).setAccessType(
              ProtoUtils.convertToProtoFormat(key)).build();
        }

        @Override
        public void remove() {
          throw new UnsupportedOperationException();
        }
      };
    }
  };
  this.builder.addAllApplicationACLs(values);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:38,代码来源:RegisterApplicationMasterResponsePBImpl.java

示例3: initApplicationACLs

import org.apache.hadoop.yarn.proto.YarnProtos.ApplicationACLMapProto; //导入依赖的package包/类
private void initApplicationACLs() {
  if (this.applicationACLS != null) {
    return;
  }
  ContainerLaunchContextProtoOrBuilder p = viaProto ? proto : builder;
  List<ApplicationACLMapProto> list = p.getApplicationACLsList();
  this.applicationACLS = new HashMap<ApplicationAccessType, String>(list
      .size());

  for (ApplicationACLMapProto aclProto : list) {
    this.applicationACLS.put(ProtoUtils.convertFromProtoFormat(aclProto
        .getAccessType()), aclProto.getAcl());
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:15,代码来源:ContainerLaunchContextPBImpl.java

示例4: buildAppProto

import org.apache.hadoop.yarn.proto.YarnProtos.ApplicationACLMapProto; //导入依赖的package包/类
private ContainerManagerApplicationProto buildAppProto(ApplicationId appId,
    String user, Credentials credentials,
    Map<ApplicationAccessType, String> appAcls,
    LogAggregationContext logAggregationContext) {

  ContainerManagerApplicationProto.Builder builder =
      ContainerManagerApplicationProto.newBuilder();
  builder.setId(((ApplicationIdPBImpl) appId).getProto());
  builder.setUser(user);

  if (logAggregationContext != null) {
    builder.setLogAggregationContext((
        (LogAggregationContextPBImpl)logAggregationContext).getProto());
  }

  builder.clearCredentials();
  if (credentials != null) {
    DataOutputBuffer dob = new DataOutputBuffer();
    try {
      credentials.writeTokenStorageToStream(dob);
      builder.setCredentials(ByteString.copyFrom(dob.getData()));
    } catch (IOException e) {
      // should not occur
      LOG.error("Cannot serialize credentials", e);
    }
  }

  builder.clearAcls();
  if (appAcls != null) {
    for (Map.Entry<ApplicationAccessType, String> acl : appAcls.entrySet()) {
      ApplicationACLMapProto p = ApplicationACLMapProto.newBuilder()
          .setAccessType(ProtoUtils.convertToProtoFormat(acl.getKey()))
          .setAcl(acl.getValue())
          .build();
      builder.addAcls(p);
    }
  }

  return builder.build();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:41,代码来源:ContainerManagerImpl.java


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