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

import com.juick.components.XMPPServer;
import com.juick.server.helpers.Status;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.inject.Inject;

/**
 * Created by vitalyster on 24.10.2016.
 */
@Controller
@ResponseBody
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;
    }
}