aboutsummaryrefslogtreecommitdiffstats
path: root/vespaclient-core/src/main/java/com/yahoo/feedapi/VespaFeedSender.java
blob: bd83564e643a522eef17dc5cb7ec9c20affb7e7e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.feedapi;

import com.yahoo.vespaxmlparser.FeedOperation;

/**
 * Wrapper class for SimpleFeedAccess to send various XML operations.
 */
public class VespaFeedSender {

    private final SimpleFeedAccess sender;

    public VespaFeedSender(SimpleFeedAccess sender) {
        this.sender = sender;
    }

    public boolean isAborted() {
        return sender.isAborted();
    }

    public void sendOperation(FeedOperation op) {
        switch (op.getType()) {
            case DOCUMENT:
                sender.put(op.getDocumentPut());
                break;
            case REMOVE:
                sender.remove(op.getDocumentRemove());
                break;
            case UPDATE:
                sender.update(op.getDocumentUpdate());
                break;
        }
    }

}