Search in sources :

Example 1 with TranscriptSearch

use of org.jivesoftware.smackx.workgroup.packet.TranscriptSearch in project ecf by eclipse.

the class TranscriptSearchManager method submitSearch.

/**
 * Submits the completed form and returns the result of the transcript search. The result
 * will include all the data returned from the server so be careful with the amount of
 * data that the search may return.
 *
 * @param serviceJID    the address of the workgroup service.
 * @param completedForm the filled out search form.
 * @return the result of the transcript search.
 * @throws XMPPException if an error occurs while submiting the search to the server.
 */
public ReportedData submitSearch(String serviceJID, Form completedForm) throws XMPPException {
    TranscriptSearch search = new TranscriptSearch();
    search.setType(IQ.Type.GET);
    search.setTo(serviceJID);
    search.addExtension(completedForm.getDataFormToSend());
    PacketCollector collector = connection.createPacketCollector(new PacketIDFilter(search.getPacketID()));
    connection.sendPacket(search);
    TranscriptSearch response = (TranscriptSearch) collector.nextResult(SmackConfiguration.getPacketReplyTimeout());
    // Cancel the collector.
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from server on status set.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }
    return ReportedData.getReportedDataFrom(response);
}
Also used : PacketCollector(org.jivesoftware.smack.PacketCollector) TranscriptSearch(org.jivesoftware.smackx.workgroup.packet.TranscriptSearch) XMPPException(org.jivesoftware.smack.XMPPException) PacketIDFilter(org.jivesoftware.smack.filter.PacketIDFilter)

Example 2 with TranscriptSearch

use of org.jivesoftware.smackx.workgroup.packet.TranscriptSearch in project Smack by igniterealtime.

the class TranscriptSearchManager method submitSearch.

/**
 * Submits the completed form and returns the result of the transcript search. The result
 * will include all the data returned from the server so be careful with the amount of
 * data that the search may return.
 *
 * @param serviceJID    the address of the workgroup service.
 * @param completedForm the filled out search form.
 * @return the result of the transcript search.
 * @throws XMPPErrorException if there was an XMPP error returned.
 * @throws NoResponseException if there was no response from the remote entity.
 * @throws NotConnectedException if the XMPP connection is not connected.
 * @throws InterruptedException if the calling thread was interrupted.
 */
public ReportedData submitSearch(DomainBareJid serviceJID, FillableForm completedForm) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
    TranscriptSearch search = new TranscriptSearch();
    search.setType(IQ.Type.get);
    search.setTo(serviceJID);
    search.addExtension(completedForm.getDataFormToSubmit());
    TranscriptSearch response = connection.sendIqRequestAndWaitForResponse(search);
    return ReportedData.getReportedDataFrom(response);
}
Also used : TranscriptSearch(org.jivesoftware.smackx.workgroup.packet.TranscriptSearch)

Example 3 with TranscriptSearch

use of org.jivesoftware.smackx.workgroup.packet.TranscriptSearch in project Smack by igniterealtime.

the class TranscriptSearchManager method getSearchForm.

/**
 * Returns the Form to use for searching transcripts. It is unlikely that the server
 * will change the form (without a restart) so it is safe to keep the returned form
 * for future submissions.
 *
 * @param serviceJID the address of the workgroup service.
 * @return the Form to use for searching transcripts.
 * @throws XMPPErrorException if there was an XMPP error returned.
 * @throws NoResponseException if there was no response from the remote entity.
 * @throws NotConnectedException if the XMPP connection is not connected.
 * @throws InterruptedException if the calling thread was interrupted.
 */
public Form getSearchForm(DomainBareJid serviceJID) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
    TranscriptSearch search = new TranscriptSearch();
    search.setType(IQ.Type.get);
    search.setTo(serviceJID);
    TranscriptSearch response = connection.sendIqRequestAndWaitForResponse(search);
    return Form.from(response);
}
Also used : TranscriptSearch(org.jivesoftware.smackx.workgroup.packet.TranscriptSearch)

Example 4 with TranscriptSearch

use of org.jivesoftware.smackx.workgroup.packet.TranscriptSearch in project Smack by igniterealtime.

the class TranscriptSearchManager method submitSearch.

/**
     * Submits the completed form and returns the result of the transcript search. The result
     * will include all the data returned from the server so be careful with the amount of
     * data that the search may return.
     *
     * @param serviceJID    the address of the workgroup service.
     * @param completedForm the filled out search form.
     * @return the result of the transcript search.
     * @throws XMPPErrorException 
     * @throws NoResponseException 
     * @throws NotConnectedException 
     * @throws InterruptedException 
     */
public ReportedData submitSearch(DomainBareJid serviceJID, Form completedForm) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
    TranscriptSearch search = new TranscriptSearch();
    search.setType(IQ.Type.get);
    search.setTo(serviceJID);
    search.addExtension(completedForm.getDataFormToSend());
    TranscriptSearch response = (TranscriptSearch) connection.createStanzaCollectorAndSend(search).nextResultOrThrow();
    return ReportedData.getReportedDataFrom(response);
}
Also used : TranscriptSearch(org.jivesoftware.smackx.workgroup.packet.TranscriptSearch)

Example 5 with TranscriptSearch

use of org.jivesoftware.smackx.workgroup.packet.TranscriptSearch in project ecf by eclipse.

the class TranscriptSearchManager method getSearchForm.

/**
 * Returns the Form to use for searching transcripts. It is unlikely that the server
 * will change the form (without a restart) so it is safe to keep the returned form
 * for future submissions.
 *
 * @param serviceJID the address of the workgroup service.
 * @return the Form to use for searching transcripts.
 * @throws XMPPException if an error occurs while sending the request to the server.
 */
public Form getSearchForm(String serviceJID) throws XMPPException {
    TranscriptSearch search = new TranscriptSearch();
    search.setType(IQ.Type.GET);
    search.setTo(serviceJID);
    PacketCollector collector = connection.createPacketCollector(new PacketIDFilter(search.getPacketID()));
    connection.sendPacket(search);
    TranscriptSearch response = (TranscriptSearch) collector.nextResult(SmackConfiguration.getPacketReplyTimeout());
    // Cancel the collector.
    collector.cancel();
    if (response == null) {
        throw new XMPPException("No response from server on status set.");
    }
    if (response.getError() != null) {
        throw new XMPPException(response.getError());
    }
    return Form.getFormFrom(response);
}
Also used : PacketCollector(org.jivesoftware.smack.PacketCollector) TranscriptSearch(org.jivesoftware.smackx.workgroup.packet.TranscriptSearch) XMPPException(org.jivesoftware.smack.XMPPException) PacketIDFilter(org.jivesoftware.smack.filter.PacketIDFilter)

Aggregations

TranscriptSearch (org.jivesoftware.smackx.workgroup.packet.TranscriptSearch)5 PacketCollector (org.jivesoftware.smack.PacketCollector)2 XMPPException (org.jivesoftware.smack.XMPPException)2 PacketIDFilter (org.jivesoftware.smack.filter.PacketIDFilter)2