aboutsummaryrefslogtreecommitdiff
path: root/juick-xmpp/src/main/java/com/juick/components/controllers/StatusController.java
blob: 68168c165d8d466323f47ca0a542fd4c3562a9c7 (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
package com.juick.components.controllers;

import com.juick.components.XMPPServer;
import com.juick.Status;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import javax.inject.Inject;

/**
 * Created by vitalyster on 24.10.2016.
 */
@RestController
public class StatusController {
    @Inject
    XMPPServer xmpp;

    @RequestMapping(method = RequestMethod.GET, value = "/", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    public Status status() {
        if (xmpp != null) {
           String status = String.format("s2s in: %d, s2s out: %d, cached: %d",
                   xmpp.getInConnections().size(), xmpp.getOutConnections().size(), xmpp.getOutCache().size());
            return Status.getStatus(status);
        }
        return Status.ERROR;
    }
}