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


Java ExceptionHandler类代码示例

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


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

示例1: refreshRepresentations

import org.eclipse.emf.transaction.ExceptionHandler; //导入依赖的package包/类
/**
 * Refreshes given {@link DRepresentation} in the given {@link TransactionalEditingDomain}.
 * 
 * @param transactionalEditingDomain
 *            the {@link TransactionalEditingDomain}
 * @param representations
 *            the {@link List} of {@link DRepresentation} to refresh
 */
public void refreshRepresentations(final TransactionalEditingDomain transactionalEditingDomain,
		final List<DRepresentation> representations) {
	// TODO prevent the editors from getting dirty
	if (representations.size() != 0) {
		final RefreshRepresentationsCommand refresh = new RefreshRepresentationsCommand(
				transactionalEditingDomain, new NullProgressMonitor(), representations);

		CommandStack commandStack = transactionalEditingDomain.getCommandStack();

		// If the command stack is transactionnal, we add a one-shot exception handler.
		if (commandStack instanceof AbstractTransactionalCommandStack) {
			AbstractTransactionalCommandStack transactionnalCommandStack = (AbstractTransactionalCommandStack)commandStack;
			transactionnalCommandStack.setExceptionHandler(new ExceptionHandler() {

				@Override
				public void handleException(Exception e) {
					// TODO Auto-generated method stub

					String repString = representations.stream().map(r -> r.getName()).collect(
							Collectors.joining(", "));
					DebugSiriusIdeUiPlugin.getPlugin().getLog().log(new Status(IStatus.WARNING,
							DebugSiriusIdeUiPlugin.ID, "Failed to refresh Sirius representation(s)["
									+ repString + "], we hope to be able to do it later", e));

					// Self-remove from the command stack.
					transactionnalCommandStack.setExceptionHandler(null);

				}
			});
		}

		commandStack.execute(refresh);

	}
}
 
开发者ID:eclipse,项目名称:gemoc-studio-modeldebugging,代码行数:44,代码来源:AbstractDSLDebuggerServices.java


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