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


Java ResultIterator.hasNext方法代码示例

本文整理汇总了Java中com.buschmais.xo.api.ResultIterator.hasNext方法的典型用法代码示例。如果您正苦于以下问题:Java ResultIterator.hasNext方法的具体用法?Java ResultIterator.hasNext怎么用?Java ResultIterator.hasNext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.buschmais.xo.api.ResultIterator的用法示例。


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

示例1: addContentTree

import com.buschmais.xo.api.ResultIterator; //导入方法依赖的package包/类
/**
    * This method adds a new content tree node or content tree part to the
    * database.
    * 
    * @param xoManager
    *            is the {@link XOManager} to use for graph access.
    * @param fileTree
    *            is the run tree to add.
    * @param analysisRunVertex
    *            is the run vertex to add the tree to.
    * @throws AnalysisStoreException
    *             is thrown in case of analysis store utilities.
    * @throws IOException
    *             is thrown in case of IO issues.
    */
   public void addContentTree(XOManager xoManager, AnalysisRunFileTree fileTree, AnalysisRunVertex analysisRunVertex)
    throws AnalysisStoreException, IOException {
ResultIterable<ContentTreeRootVertex> contentRootResult = xoManager.find(ContentTreeRootVertex.class,
	fileTree.getHashId().toString());
ResultIterator<ContentTreeRootVertex> contentRootIterator = contentRootResult.iterator();
if (contentRootIterator.hasNext()) {
    analysisRunVertex.setContentRoot(contentRootIterator.next());
    return;
}
ContentTreeRootVertex contentRoot = xoManager.create(ContentTreeRootVertex.class);
contentRoot.setHashId(fileTree.getHashId().toString());
analysisRunVertex.setContentRoot(contentRoot);
for (AnalysisRunFileTree child : fileTree.getChildren()) {
    if (child.isFile()) {
	addContentTreeFileVertex(xoManager, child, contentRoot);
    } else {
	addContentTreeDirectoryVertex(xoManager, child, contentRoot);
    }
}
   }
 
开发者ID:PureSolTechnologies,项目名称:Purifinity,代码行数:36,代码来源:AnalysisStoreContentTreeUtils.java

示例2: getSingleResult

import com.buschmais.xo.api.ResultIterator; //导入方法依赖的package包/类
@Override
public T getSingleResult() {
    ResultIterator<T> iterator = iterator();
    if (!iterator.hasNext()) {
        throw new XOException("No result available.");
    }
    try {
        T singleResult = iterator.next();
        if (iterator.hasNext()) {
            throw new XOException("More than one result available.");
        }
        return singleResult;
    } finally {
        iterator.close();
    }
}
 
开发者ID:buschmais,项目名称:extended-objects,代码行数:17,代码来源:AbstractResultIterable.java

示例3: findAnalysisProjectVertex

import com.buschmais.xo.api.ResultIterator; //导入方法依赖的package包/类
/**
    * This method looks a specific Analysis Project vertex up in the graph db.
    * 
    * @param xoManager
    *            is the {@link XOManager} to use for graph access.
    * @param projectId
    *            is the id of the project.
    * @return An {@link AnalysisProjectVertex} is returned.
    * @throws AnalysisStoreException
    *             is thrown in case of analysis store issues.
    */
   public static AnalysisProjectVertex findAnalysisProjectVertex(XOManager xoManager, String projectId)
    throws AnalysisStoreException {
ResultIterable<AnalysisProjectVertex> result = xoManager.find(AnalysisProjectVertex.class, projectId);
ResultIterator<AnalysisProjectVertex> iterator = result.iterator();
if (!iterator.hasNext()) {
    throw new AnalysisStoreException("Could not find a project with identifier '" + projectId + "'.");
}
AnalysisProjectVertex analysisProject = iterator.next();
if (iterator.hasNext()) {
    throw new AnalysisStoreException(
	    "Multiple projects with identifier '" + projectId + "' were found. Database is inconsistent.");
}
return analysisProject;
   }
 
开发者ID:PureSolTechnologies,项目名称:Purifinity,代码行数:26,代码来源:AnalysisStoreDuctileDBUtils.java

示例4: toResult

import com.buschmais.xo.api.ResultIterator; //导入方法依赖的package包/类
@Override
public <D, T> ResultIterable<T> toResult(ResultIterator<D> iterator) {
    ResultIterator<T> resultIterator = new ResultIterator<T>() {

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

        @Override
        public T next() {
            Object datastoreValue = iterator.next();
            return fromDatastore(datastoreValue);
        }

        @Override
        public void remove() {
            throw new UnsupportedOperationException("Cannot remove instance.");
        }

        @Override
        public void close() {
            iterator.close();
        }
    };
    XOTransaction xoTransaction = sessionContext.getXOTransaction();
    final ResultIterator<T> transactionalIterator = xoTransaction != null ? new TransactionalResultIterator<>(resultIterator, xoTransaction)
            : resultIterator;
    return sessionContext.getInterceptorFactory().addInterceptor(new AbstractResultIterable<T>() {
        @Override
        public ResultIterator<T> iterator() {
            return transactionalIterator;
        }
    }, ResultIterable.class);
}
 
开发者ID:buschmais,项目名称:extended-objects,代码行数:36,代码来源:XOSessionImpl.java


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