本文整理汇总了Java中com.google.enterprise.adaptor.DocIdPusher.FeedType方法的典型用法代码示例。如果您正苦于以下问题:Java DocIdPusher.FeedType方法的具体用法?Java DocIdPusher.FeedType怎么用?Java DocIdPusher.FeedType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.google.enterprise.adaptor.DocIdPusher
的用法示例。
在下文中一共展示了DocIdPusher.FeedType方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getDocIds
import com.google.enterprise.adaptor.DocIdPusher; //导入方法依赖的package包/类
@Override
public void getDocIds(DocIdPusher pusher) throws InterruptedException {
Authentication authentication = this.soapFactory.newAuthentication();
String authenticationToken =
getAuthenticationToken(this.username, this.password);
DocumentManagement documentManagement =
soapFactory.newDocumentManagement(authenticationToken);
ArrayList<DocId> docIds = new ArrayList<DocId>();
for (StartPoint startPoint : this.startPoints) {
if (isValidStartPoint(startPoint, documentManagement)) {
docIds.add(
new DocId(startPoint.getName() + ":" + startPoint.getNodeId()));
}
}
log.log(Level.FINER, "Sending doc ids: {0}", docIds);
pusher.pushDocIds(docIds);
if (!this.markAllDocsAsPublic) {
MemberService memberService =
this.soapFactory.newMemberService(documentManagement);
SOAPFaultException groupsException = null;
Groups groups = new Groups(memberService);
try {
groups.addGroups();
if (this.publicAccessGroupEnabled) {
groups.addPublicAccessGroup("[Public Access]", this.localNamespace);
}
} catch (SOAPFaultException e) {
groupsException = e;
log.log(Level.WARNING, "Error while reading groups", e);
}
// If some groups were found, push them; otherwise, if an
// exception was thrown, rethrow it as before.
Map<GroupPrincipal, List<Principal>> groupDefinitions =
groups.getGroupDefinitions();
if (groupDefinitions.size() > 0) {
DocIdPusher.FeedType feedType = DocIdPusher.FeedType.REPLACE;
if (groups.isPartialResults() || groupsException != null) {
feedType = DocIdPusher.FeedType.INCREMENTAL;
log.log(Level.FINE, "Sending partial groups results");
}
pusher.pushGroupDefinitions(groupDefinitions,
/* case sensitive */ true, feedType,
/* group source */ null, /* exception handler */ null);
} else if (groupsException != null) {
throw groupsException;
}
}
}
示例2: testGroupsError
import com.google.enterprise.adaptor.DocIdPusher; //导入方法依赖的package包/类
@Test
public void testGroupsError() throws InterruptedException {
class MemberServiceMockError extends MemberServiceMock {
boolean called;
public MemberSearchResults getSearchResults(PageHandle pageHandle) {
if (!called) {
called = true;
return new MemberSearchResultsMock((PageHandleMock) pageHandle);
}
throw getSoapFaultException("MemberService SOAPFaultException",
"urn:opentextadaptortest", "Test.MemberServiceException", "ns0");
}
}
SoapFactoryMock soapFactory = new SoapFactoryMock();
soapFactory.memberServiceMock = new MemberServiceMockError();
for (int i = 0; i < 20; i++) {
soapFactory.memberServiceMock.addMember(
getMember(1000 + i, "user" + i, "User"));
}
// The search uses a page size of 50, and we want to trigger
// an exception on the second page in order to get partial
// results, so create a bunch of groups.
for (int i = 0; i < 64; i++) {
soapFactory.memberServiceMock.addMember(
getMember(2000 + i, "group" + i, "Group"));
soapFactory.memberServiceMock.addMemberToGroup(
2000 + i,
soapFactory.memberServiceMock.getMemberById(1000 + (i % 20)));
}
OpentextAdaptor adaptor = new OpentextAdaptor(soapFactory);
AdaptorContext context = ProxyAdaptorContext.getInstance();
Config config = initConfig(adaptor, context);
adaptor.init(context);
class MyRecordingDocIdPusher extends RecordingDocIdPusher {
DocIdPusher.FeedType latestFeedType;
@Override
public GroupPrincipal pushGroupDefinitions(
Map<GroupPrincipal, ? extends Collection<Principal>> defs,
boolean caseSensitive, FeedType feedType, String sourceName,
ExceptionHandler exceptionHandler) throws InterruptedException {
this.latestFeedType = feedType;
return super.pushGroupDefinitions(
defs, caseSensitive, feedType, sourceName, exceptionHandler);
}
};
MyRecordingDocIdPusher pusher = new MyRecordingDocIdPusher();
adaptor.getDocIds(pusher);
Map<GroupPrincipal, Collection<Principal>> groupDefinitions =
pusher.getGroupDefinitions();
assertEquals(50, groupDefinitions.size());
assertEquals(DocIdPusher.FeedType.INCREMENTAL, pusher.latestFeedType);
}