public List<StatePortInfo> getStatePorts() {
        List<StatePortInfo> result = new ArrayList<>();
        for (HostResource modelHost : hostSystem().getHosts()) {
            String hostName = modelHost.getHostname();
            for (Service modelService : modelHost.getServices()) {
                PortsMeta portsMeta = modelService.getPortsMeta();
                for (int i = 0; i < portsMeta.getNumPorts(); i++) {
                    int portNumber = modelService.getRelativePort(i);
                    boolean hasState = false;
                    boolean isHttp = false;
                    for (String tag : portsMeta.getTagsAt(i)) {
                        if (tag.equals("state")) hasState = true;
                        if (tag.equals("http")) isHttp = true;
                    }
                    if (hasState && isHttp) {
                        result.add(new StatePortInfo(hostName, portNumber, modelService));
                    }
                }
            }
        }
        return result;
    }
Prepares the model for start. The {@link VespaModel} calls
this methods after it has loaded this and all plugins have been loaded and
their initialize() methods have been called.

@param plugins All initialized plugins of the vespa model.
config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java