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

com.reprezen.genflow.swagger.doc.ModelHelper Maven / Gradle / Ivy

The newest version!
package com.reprezen.genflow.swagger.doc;

import com.reprezen.genflow.swagger.doc.Helper;
import io.swagger.models.AbstractModel;
import io.swagger.models.ArrayModel;
import io.swagger.models.ComposedModel;
import io.swagger.models.Model;
import io.swagger.models.ModelImpl;
import io.swagger.models.RefModel;

@SuppressWarnings("all")
public class ModelHelper implements Helper {
  @Override
  public void init() {
  }
  
  /**
   * See comments at top of PropertyHelper - everything here is analogous
   */
  public Object getAttribute(final Model model, final String attr) {
    Object _switchResult = null;
    boolean _matched = false;
    if (model instanceof ModelImpl) {
      _matched=true;
      _switchResult = this.getAttribute(((ModelImpl)model), attr);
    }
    if (!_matched) {
      if (model instanceof ComposedModel) {
        _matched=true;
        _switchResult = this.getAttribute(((ComposedModel)model), attr);
      }
    }
    if (!_matched) {
      if (model instanceof ArrayModel) {
        _matched=true;
        _switchResult = this.getAttribute(((ArrayModel)model), attr);
      }
    }
    if (!_matched) {
      if (model instanceof AbstractModel) {
        _matched=true;
        _switchResult = this.getAttribute(((AbstractModel)model), attr);
      }
    }
    if (!_matched) {
      if (model instanceof RefModel) {
        _matched=true;
        _switchResult = this.getAttribute(((RefModel)model), attr);
      }
    }
    return _switchResult;
  }
  
  private Object getAttribute(final ModelImpl model, final String attr) {
    Object _xblockexpression = null;
    {
      Object _switchResult = null;
      if (attr != null) {
        switch (attr) {
          case "additionalProperties":
            _switchResult = model.getAdditionalProperties();
            break;
          case "defaultValue":
            _switchResult = model.getDefaultValue();
            break;
          case "description":
            _switchResult = model.getDescription();
            break;
          case "discriminator":
            _switchResult = model.getDiscriminator();
            break;
          case "enum":
            _switchResult = model.getEnum();
            break;
          case "example":
            _switchResult = model.getExample();
            break;
          case "format":
            _switchResult = model.getFormat();
            break;
          case "name":
            _switchResult = model.getName();
            break;
          case "properties":
            _switchResult = model.getProperties();
            break;
          case "required":
            _switchResult = model.getRequired();
            break;
          case "type":
            _switchResult = model.getType();
            break;
          case "xml":
            _switchResult = model.getXml();
            break;
        }
      }
      final Object value = _switchResult;
      Object _elvis = null;
      if (value != null) {
        _elvis = value;
      } else {
        Object _attribute = this.getAttribute(((AbstractModel) model), attr);
        _elvis = _attribute;
      }
      _xblockexpression = _elvis;
    }
    return _xblockexpression;
  }
  
  private Object getAttribute(final ComposedModel model, final String attr) {
    Object _xblockexpression = null;
    {
      Object _switchResult = null;
      if (attr != null) {
        switch (attr) {
          case "allOf":
            _switchResult = model.getAllOf();
            break;
          case "child":
            _switchResult = model.getChild();
            break;
          case "description":
            _switchResult = model.getDescription();
            break;
          case "example":
            _switchResult = model.getExample();
            break;
          case "interfaces":
            _switchResult = model.getInterfaces();
            break;
          case "parent":
            _switchResult = model.getParent();
            break;
          case "properties":
            _switchResult = model.getProperties();
            break;
          case "type":
            _switchResult = "allOf";
            break;
        }
      }
      final Object value = _switchResult;
      Object _elvis = null;
      if (value != null) {
        _elvis = value;
      } else {
        Object _attribute = this.getAttribute(((AbstractModel) model), attr);
        _elvis = _attribute;
      }
      _xblockexpression = _elvis;
    }
    return _xblockexpression;
  }
  
  private Object getAttribute(final ArrayModel model, final String attr) {
    Object _xblockexpression = null;
    {
      Object _switchResult = null;
      if (attr != null) {
        switch (attr) {
          case "description":
            _switchResult = model.getDescription();
            break;
          case "example":
            _switchResult = model.getExample();
            break;
          case "items":
            _switchResult = model.getItems();
            break;
          case "properties":
            _switchResult = model.getProperties();
            break;
          case "type":
            _switchResult = model.getType();
            break;
        }
      }
      final Object value = _switchResult;
      Object _elvis = null;
      if (value != null) {
        _elvis = value;
      } else {
        Object _attribute = this.getAttribute(((AbstractModel) model), attr);
        _elvis = _attribute;
      }
      _xblockexpression = _elvis;
    }
    return _xblockexpression;
  }
  
  private Object getAttribute(final AbstractModel model, final String attr) {
    Object _switchResult = null;
    if (attr != null) {
      switch (attr) {
        case "description":
          _switchResult = model.getDescription();
          break;
        case "example":
          _switchResult = model.getExample();
          break;
        case "externalDocs":
          _switchResult = model.getExternalDocs();
          break;
        case "properties":
          _switchResult = model.getProperties();
          break;
        case "title":
          _switchResult = model.getTitle();
          break;
      }
    }
    return _switchResult;
  }
  
  private String getAttribute(final RefModel model, final String attr) {
    String _switchResult = null;
    if (attr != null) {
      switch (attr) {
        case "$ref":
          _switchResult = model.get$ref();
          break;
      }
    }
    return _switchResult;
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy