All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.swagger.oas.inflector.models.InflectResult Maven / Gradle / Ivy

There is a newer version: 2.0.12
Show newest version
package io.swagger.oas.inflector.models;

import com.fasterxml.jackson.annotation.JsonPropertyOrder;

import java.util.*;

@JsonPropertyOrder({ "valid", "swaggerDefinitionMessages", "unimplementedControllerCount", "unimplementedMethodCount", "unimplementedModelCount" })
public class InflectResult {
    private boolean valid;
    private List swaggerDefinitionMessages;
    private Map> unimplementedControllers;
    private Set unimplementedModels;

    public InflectResult specParseMessage(String message) {
        if (swaggerDefinitionMessages == null) {
            swaggerDefinitionMessages = new ArrayList<>();
        }
        swaggerDefinitionMessages.add(message);
        return this;
    }

    public InflectResult valid() {
        this.valid = true;
        return this;
    }

    public InflectResult invalid() {
        this.valid = false;
        return this;
    }

    public InflectResult valid(boolean isValid) {
        this.valid = isValid;
        return this;
    }

    public InflectResult unimplementedModel(String model) {
        if (unimplementedModels == null) {
            unimplementedModels = new HashSet();
        }
        unimplementedModels.add(model);
        return this;
    }

    public InflectResult unimplementedControllers(String location, List messages) {
        for (String message : messages) {
            unimplementedController(location, message);
        }
        return this;
    }

    public InflectResult unimplementedController(String location, String message) {
        if (unimplementedControllers == null) {
            unimplementedControllers = new HashMap>();
        }
        List l = unimplementedControllers.get(location);
        if (l == null) {
            l = new ArrayList<>();
            unimplementedControllers.put(location, l);
        }
        l.add(message);

        return this;
    }

    public boolean isValid() {
        if(swaggerDefinitionMessages == null || swaggerDefinitionMessages.size() == 0) {
            return true;
        }
        return false;
    }

    public void setValid(boolean valid) {
        this.valid = valid;
    }

    public Map> getUnimplementedControllers() {
        return unimplementedControllers;
    }

    public void setUnimplementedControllers(Map> unimplementedControllers) {
        this.unimplementedControllers = unimplementedControllers;
    }

    public Set getUnimplementedModels() {
        return unimplementedModels;
    }

    public void setUnimplementedModels(Set unimplementedModels) {
        this.unimplementedModels = unimplementedModels;
    }

    public List getSwaggerDefinitionMessages() {
        return swaggerDefinitionMessages;
    }

    public void setSwaggerDefinitionMessages(List swaggerDefinitionMessages) {
        this.swaggerDefinitionMessages = swaggerDefinitionMessages;
    }

    public Integer getUnimplementedModelCount() {
        if(unimplementedModels == null || this.unimplementedModels.size() == 0) {
            return null;
        }
        return this.unimplementedModels.size();
    }
    public Integer getUnimplementedControllerCount() {
        if(unimplementedControllers == null || unimplementedControllers.keySet().size() == 0) {
            return null;
        }
        return this.unimplementedControllers.keySet().size();
    }

    public Integer getUnimplementedMethodCount() {
        if(unimplementedControllers == null || unimplementedControllers.keySet().size() == 0) {
            return null;
        }
        int count = 0;
        for(String key : unimplementedControllers.keySet()) {
            count += unimplementedControllers.get(key).size();
        }
        return count;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy