本文整理汇总了Java中org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest.getApplicationTypes方法的典型用法代码示例。如果您正苦于以下问题:Java GetApplicationsRequest.getApplicationTypes方法的具体用法?Java GetApplicationsRequest.getApplicationTypes怎么用?Java GetApplicationsRequest.getApplicationTypes使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest
的用法示例。
在下文中一共展示了GetApplicationsRequest.getApplicationTypes方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getApplicationReports
import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest; //导入方法依赖的package包/类
private GetApplicationsResponse getApplicationReports(
List<ApplicationReport> applicationReports,
GetApplicationsRequest request) {
List<ApplicationReport> appReports = new ArrayList<ApplicationReport>();
Set<String> appTypes = request.getApplicationTypes();
boolean bypassFilter = appTypes.isEmpty();
for (ApplicationReport appReport : applicationReports) {
if (!(bypassFilter || appTypes.contains(
appReport.getApplicationType()))) {
continue;
}
appReports.add(appReport);
}
GetApplicationsResponse response =
GetApplicationsResponse.newInstance(appReports);
return response;
}
示例2: getApplications
import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest; //导入方法依赖的package包/类
@Override
public GetApplicationsResponse getApplications(
GetApplicationsRequest request) throws YarnException {
UserGroupInformation callerUGI;
try {
callerUGI = UserGroupInformation.getCurrentUser();
} catch (IOException ie) {
LOG.info("Error getting UGI ", ie);
throw RPCUtil.getRemoteException(ie);
}
Set<String> applicationTypes = request.getApplicationTypes();
boolean bypassFilter = applicationTypes.isEmpty();
List<ApplicationReport> reports = new ArrayList<ApplicationReport>();
for (RMApp application : this.rmContext.getRMApps().values()) {
if (!(bypassFilter || applicationTypes.contains(application
.getApplicationType()))) {
continue;
}
boolean allowAccess = checkAccess(callerUGI, application.getUser(),
ApplicationAccessType.VIEW_APP, application.getApplicationId());
reports.add(application.createAndGetApplicationReport(allowAccess));
}
GetApplicationsResponse response =
recordFactory.newRecordInstance(GetApplicationsResponse.class);
response.setApplicationList(reports);
return response;
}
示例3: getApplications
import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest; //导入方法依赖的package包/类
@Override
public GetApplicationsResponse getApplications(
GetApplicationsRequest request) throws YarnException {
UserGroupInformation callerUGI;
try {
callerUGI = UserGroupInformation.getCurrentUser();
} catch (IOException ie) {
LOG.info("Error getting UGI ", ie);
throw RPCUtil.getRemoteException(ie);
}
Set<String> applicationTypes = request.getApplicationTypes();
EnumSet<YarnApplicationState> applicationStates =
request.getApplicationStates();
List<ApplicationReport> reports = new ArrayList<ApplicationReport>();
for (RMApp application : this.rmContext.getRMApps().values()) {
if (applicationTypes != null && !applicationTypes.isEmpty()) {
if (!applicationTypes.contains(application.getApplicationType())) {
continue;
}
}
if (applicationStates != null && !applicationStates.isEmpty()) {
if (!applicationStates.contains(application
.createApplicationState())) {
continue;
}
}
boolean allowAccess = checkAccess(callerUGI, application.getUser(),
ApplicationAccessType.VIEW_APP, application);
reports.add(application.createAndGetApplicationReport(
callerUGI.getUserName(), allowAccess));
}
GetApplicationsResponse response =
recordFactory.newRecordInstance(GetApplicationsResponse.class);
response.setApplicationList(reports);
return response;
}