Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8,765 changes: 7,803 additions & 962 deletions package-lock.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"devDependencies": {
"@openapitools/openapi-generator-cli": "2.4.13",
"release-it": "^14.10.0"
"release-it": "^15.0.0"
},
"scripts": {
"generate:server": "openapi-generator-cli generate -g python-flask -o server -i $npm_config_spec",
Expand Down
2 changes: 1 addition & 1 deletion server/.openapi-generator/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
5.2.0
5.4.0
Original file line number Diff line number Diff line change
@@ -1,22 +1,18 @@
import connexion
from nlpsandbox.model.note_id import NoteId
from nlpsandbox.model.patient_id import PatientId
import six

from openapi_server.models.deidentify_request import DeidentifyRequest # noqa: E501
from openapi_server.models import DeidentificationStep, DeidentifyResponse, \
AnnotationSet, Note
from openapi_server.phi_deidentifier.deidentifiers import apply_masking_char, \
apply_redaction, apply_annotation_type
from openapi_server.config import Config
from nlpsandboxclient import client
from openapi_server.models.deidentify_response import DeidentifyResponse # noqa: E501
from openapi_server.models.error import Error # noqa: E501
from openapi_server import util


def create_deidentified_notes(deidentify_request=None): # noqa: E501
"""Deidentify a clinical note

Returns the deidentified note # noqa: E501

:param deidentify_request:
:param deidentify_request:
:type deidentify_request: dict | bytes

:rtype: DeidentifyResponse
Expand Down
26 changes: 16 additions & 10 deletions server/openapi_server/controllers/tool_controller.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
from typing import List

from nlpsandboxclient import client

from openapi_server.models.tool import Tool # noqa: E501
from ..config import Config
from ..models import License, ToolDependencies, ToolType
from ..models import License, ToolDependencies, ToolType, ToolDependency


def get_tool(): # noqa: E501
Expand Down Expand Up @@ -37,17 +39,21 @@ def get_tool_dependencies(): # noqa: E501
:rtype: ToolDependencies
"""
config = Config()
tool_dependencies = []
for hostname in (
config.date_annotator_api_url,
config.person_name_annotator_api_url,
config.location_annotator_api_url,
config.contact_annotator_api_url,
config.id_annotator_api_url,
tool_dependencies: List[ToolDependency] = []
for functional_type, hostname in (
(ToolType.DATE_ANNOTATOR, config.date_annotator_api_url),
(ToolType.PERSON_NAME_ANNOTATOR,
config.person_name_annotator_api_url),
(ToolType.LOCATION_ANNOTATOR, config.location_annotator_api_url),
(ToolType.CONTACT_ANNOTATOR, config.contact_annotator_api_url),
(ToolType.ID_ANNOTATOR, config.id_annotator_api_url),
):
client_tool = client.get_tool(host=hostname)
tool = Tool.from_dict({client_tool.attribute_map[key]: value
for key, value in
client_tool.to_dict().items()})
tool_dependencies.append(tool)
return ToolDependencies(tools=tool_dependencies)
tool_dependency = ToolDependency(
tool=tool, functional_type=functional_type)
tool_dependencies.append(tool_dependency)
print('ASDFEHASWEJ')
return ToolDependencies(tool_dependencies=tool_dependencies)
2 changes: 2 additions & 0 deletions server/openapi_server/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
from openapi_server.models.license import License
from openapi_server.models.masking_char_config import MaskingCharConfig
from openapi_server.models.note import Note
from openapi_server.models.programming_language import ProgrammingLanguage
from openapi_server.models.text_annotation import TextAnnotation
from openapi_server.models.text_contact_annotation import TextContactAnnotation
from openapi_server.models.text_contact_annotation_all_of import TextContactAnnotationAllOf
Expand All @@ -25,4 +26,5 @@
from openapi_server.models.text_person_name_annotation import TextPersonNameAnnotation
from openapi_server.models.tool import Tool
from openapi_server.models.tool_dependencies import ToolDependencies
from openapi_server.models.tool_dependency import ToolDependency
from openapi_server.models.tool_type import ToolType
95 changes: 95 additions & 0 deletions server/openapi_server/models/programming_language.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# coding: utf-8

from __future__ import absolute_import
from datetime import date, datetime # noqa: F401

from typing import List, Dict # noqa: F401

from openapi_server.models.base_model_ import Model
from openapi_server import util


class ProgrammingLanguage(Model):
"""NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

Do not edit the class manually.
"""

"""
allowed enum values
"""
APL = "APL"
ASP = "ASP"
ADA = "Ada"
ASSEMBLY = "Assembly"
AWK = "Awk"
BASIC = "Basic"
C = "C"
C_ = "C#"
C_ = "C++"
CLOJURE = "Clojure"
CYTHON = "Cython"
DART = "Dart"
DELPHI_KYLIX = "Delphi/Kylix"
EMACS_LISP = "Emacs-Lisp"
ERLANG = "Erlang"
EULER = "Euler"
FORTH = "Forth"
FORTRAN = "Fortran"
GO = "Go"
GROOVY = "Groovy"
HASKELL = "Haskell"
JAVA = "Java"
JAVASCRIPT = "JavaScript"
JULIA = "Julia"
KOTLIN = "Kotlin"
LISP = "Lisp"
LOGO = "Logo"
MATLAB = "MATLAB"
ML = "ML"
OCAML = "OCaml"
OBJECT_PASCAL = "Object Pascal"
OBJECTIVE_C = "Objective C"
OTHER = "Other"
OTHER_SCRIPTING_ENGINES = "Other Scripting Engines"
PHP = "PHP"
PL_SQL = "PL/SQL"
PASCAL = "Pascal"
PERL = "Perl"
PIKE = "Pike"
PROLOG = "Prolog"
PYTHON = "Python"
R = "R"
REBOL = "REBOL"
REXX = "Rexx"
RUBY = "Ruby"
RUST = "Rust"
SCALA = "Scala"
SCHEME = "Scheme"
SQL = "SQL"
TCL = "Tcl"
TYPESCRIPT = "TypeScript"
UNIX_SHELL = "Unix Shell"
VISUAL_BASIC = "Visual Basic"
YACC = "YACC"
ZOPE = "Zope"
def __init__(self): # noqa: E501
"""ProgrammingLanguage - a model defined in OpenAPI

"""
self.openapi_types = {
}

self.attribute_map = {
}

@classmethod
def from_dict(cls, dikt) -> 'ProgrammingLanguage':
"""Returns the dict as a model

:param dikt: A dict.
:type: dict
:return: The ProgrammingLanguage of this ProgrammingLanguage. # noqa: E501
:rtype: ProgrammingLanguage
"""
return util.deserialize_model(dikt, cls)
38 changes: 35 additions & 3 deletions server/openapi_server/models/tool.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,13 @@

from openapi_server.models.base_model_ import Model
from openapi_server.models.license import License
from openapi_server.models.programming_language import ProgrammingLanguage
from openapi_server.models.tool_type import ToolType
import re
from openapi_server import util

from openapi_server.models.license import License # noqa: E501
from openapi_server.models.programming_language import ProgrammingLanguage # noqa: E501
from openapi_server.models.tool_type import ToolType # noqa: E501
import re # noqa: E501

Expand All @@ -21,7 +23,7 @@ class Tool(Model):
Do not edit the class manually.
"""

def __init__(self, name=None, version=None, license=None, repository=None, description=None, author=None, author_email=None, url=None, type=None, api_version=None): # noqa: E501
def __init__(self, name=None, version=None, license=None, repository=None, description=None, author=None, author_email=None, url=None, type=None, api_version=None, programming_languages=None): # noqa: E501
"""Tool - a model defined in OpenAPI

:param name: The name of this Tool. # noqa: E501
Expand All @@ -44,6 +46,8 @@ def __init__(self, name=None, version=None, license=None, repository=None, descr
:type type: ToolType
:param api_version: The api_version of this Tool. # noqa: E501
:type api_version: str
:param programming_languages: The programming_languages of this Tool. # noqa: E501
:type programming_languages: list[ProgrammingLanguage]
"""
self.openapi_types = {
'name': str,
Expand All @@ -55,7 +59,8 @@ def __init__(self, name=None, version=None, license=None, repository=None, descr
'author_email': str,
'url': str,
'type': ToolType,
'api_version': str
'api_version': str,
'programming_languages': list[ProgrammingLanguage]
}

self.attribute_map = {
Expand All @@ -68,7 +73,8 @@ def __init__(self, name=None, version=None, license=None, repository=None, descr
'author_email': 'authorEmail',
'url': 'url',
'type': 'type',
'api_version': 'apiVersion'
'api_version': 'apiVersion',
'programming_languages': 'programmingLanguages'
}

self._name = name
Expand All @@ -81,6 +87,7 @@ def __init__(self, name=None, version=None, license=None, repository=None, descr
self._url = url
self._type = type
self._api_version = api_version
self._programming_languages = programming_languages

@classmethod
def from_dict(cls, dikt) -> 'Tool':
Expand Down Expand Up @@ -354,3 +361,28 @@ def api_version(self, api_version):
raise ValueError("Invalid value for `api_version`, must be a follow pattern or equal to `/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/`") # noqa: E501

self._api_version = api_version

@property
def programming_languages(self):
"""Gets the programming_languages of this Tool.

The programming languages used to develop this tool # noqa: E501

:return: The programming_languages of this Tool.
:rtype: list[ProgrammingLanguage]
"""
return self._programming_languages

@programming_languages.setter
def programming_languages(self, programming_languages):
"""Sets the programming_languages of this Tool.

The programming languages used to develop this tool # noqa: E501

:param programming_languages: The programming_languages of this Tool.
:type programming_languages: list[ProgrammingLanguage]
"""
if programming_languages is not None and len(programming_languages) < 0:
raise ValueError("Invalid value for `programming_languages`, number of items must be greater than or equal to `0`") # noqa: E501

self._programming_languages = programming_languages
46 changes: 23 additions & 23 deletions server/openapi_server/models/tool_dependencies.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,32 +6,32 @@
from typing import List, Dict # noqa: F401

from openapi_server.models.base_model_ import Model
from openapi_server.models.tool import Tool
from openapi_server.models.tool_dependency import ToolDependency
from openapi_server import util

from openapi_server.models.tool import Tool # noqa: E501
from openapi_server.models.tool_dependency import ToolDependency # noqa: E501

class ToolDependencies(Model):
"""NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

Do not edit the class manually.
"""

def __init__(self, tools=None): # noqa: E501
def __init__(self, tool_dependencies=None): # noqa: E501
"""ToolDependencies - a model defined in OpenAPI

:param tools: The tools of this ToolDependencies. # noqa: E501
:type tools: List[Tool]
:param tool_dependencies: The tool_dependencies of this ToolDependencies. # noqa: E501
:type tool_dependencies: List[ToolDependency]
"""
self.openapi_types = {
'tools': List[Tool]
'tool_dependencies': List[ToolDependency]
}

self.attribute_map = {
'tools': 'tools'
'tool_dependencies': 'toolDependencies'
}

self._tools = tools
self._tool_dependencies = tool_dependencies

@classmethod
def from_dict(cls, dikt) -> 'ToolDependencies':
Expand All @@ -45,26 +45,26 @@ def from_dict(cls, dikt) -> 'ToolDependencies':
return util.deserialize_model(dikt, cls)

@property
def tools(self):
"""Gets the tools of this ToolDependencies.
def tool_dependencies(self):
"""Gets the tool_dependencies of this ToolDependencies.

A list of tools # noqa: E501
A list of tool dependencies # noqa: E501

:return: The tools of this ToolDependencies.
:rtype: List[Tool]
:return: The tool_dependencies of this ToolDependencies.
:rtype: List[ToolDependency]
"""
return self._tools
return self._tool_dependencies

@tools.setter
def tools(self, tools):
"""Sets the tools of this ToolDependencies.
@tool_dependencies.setter
def tool_dependencies(self, tool_dependencies):
"""Sets the tool_dependencies of this ToolDependencies.

A list of tools # noqa: E501
A list of tool dependencies # noqa: E501

:param tools: The tools of this ToolDependencies.
:type tools: List[Tool]
:param tool_dependencies: The tool_dependencies of this ToolDependencies.
:type tool_dependencies: List[ToolDependency]
"""
if tools is None:
raise ValueError("Invalid value for `tools`, must not be `None`") # noqa: E501
if tool_dependencies is None:
raise ValueError("Invalid value for `tool_dependencies`, must not be `None`") # noqa: E501

self._tools = tools
self._tool_dependencies = tool_dependencies
Loading