Пример #1
0
  /**
   * execute the call and return the results. If there is a problem calling the service, an
   * exception will be thrown
   *
   * @return the results
   */
  public WsMemberChangeSubjectResults execute() {
    this.validate();
    WsMemberChangeSubjectResults wsMemberChangeSubjectResults = null;
    try {
      // Make the body of the request, in this case with beans and marshaling, but you can make
      // your request document in whatever language or way you want
      WsRestMemberChangeSubjectRequest memberChangeSubject = new WsRestMemberChangeSubjectRequest();

      memberChangeSubject.setActAsSubjectLookup(this.actAsSubject);

      WsMemberChangeSubject wsMemberChangeSubject = new WsMemberChangeSubject();
      if (this.deleteOldMember != null) {
        wsMemberChangeSubject.setDeleteOldMember(this.deleteOldMember ? "T" : "F");
      }
      wsMemberChangeSubject.setOldSubjectLookup(this.oldSubjectLookup);
      wsMemberChangeSubject.setNewSubjectLookup(this.newSubjectLookup);
      memberChangeSubject.setWsMemberChangeSubjects(
          new WsMemberChangeSubject[] {wsMemberChangeSubject});

      memberChangeSubject.setTxType(this.txType == null ? null : this.txType.name());

      if (this.includeSubjectDetail != null) {
        memberChangeSubject.setIncludeSubjectDetail(this.includeSubjectDetail ? "T" : "F");
      }

      if (this.subjectAttributeNames.size() > 0) {
        memberChangeSubject.setSubjectAttributeNames(
            GrouperClientUtils.toArray(this.subjectAttributeNames, String.class));
      }

      // add params if there are any
      if (this.params.size() > 0) {
        memberChangeSubject.setParams(GrouperClientUtils.toArray(this.params, WsParam.class));
      }

      GrouperClientWs grouperClientWs = new GrouperClientWs();

      // kick off the web service
      wsMemberChangeSubjectResults =
          (WsMemberChangeSubjectResults)
              grouperClientWs.executeService(
                  "members", memberChangeSubject, "memberChangeSubject", this.clientVersion, false);

      String resultMessage = wsMemberChangeSubjectResults.getResultMetadata().getResultMessage();
      grouperClientWs.handleFailure(
          wsMemberChangeSubjectResults, wsMemberChangeSubjectResults.getResults(), resultMessage);

    } catch (Exception e) {
      GrouperClientUtils.convertToRuntimeException(e);
    }
    return wsMemberChangeSubjectResults;
  }