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


Java DocIdPusher.FeedType方法代码示例

本文整理汇总了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;
    }
  }
}
 
开发者ID:googlegsa,项目名称:opentext,代码行数:51,代码来源:OpentextAdaptor.java

示例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);
}
 
开发者ID:googlegsa,项目名称:opentext,代码行数:56,代码来源:OpentextAdaptorTest.java


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