OAPI: regenerate code
This commit is contained in:
parent
9985860c66
commit
7b1b6030d3
@ -10,7 +10,7 @@
|
||||
"""
|
||||
|
||||
|
||||
__version__ = "adba7217"
|
||||
__version__ = "9985860c"
|
||||
|
||||
# import ApiClient
|
||||
from flamenco.manager.api_client import ApiClient
|
||||
|
@ -31,6 +31,7 @@ from flamenco.manager.model.jobs_query import JobsQuery
|
||||
from flamenco.manager.model.jobs_query_result import JobsQueryResult
|
||||
from flamenco.manager.model.submitted_job import SubmittedJob
|
||||
from flamenco.manager.model.task import Task
|
||||
from flamenco.manager.model.task_status_change import TaskStatusChange
|
||||
|
||||
|
||||
class JobsApi(object):
|
||||
@ -388,6 +389,62 @@ class JobsApi(object):
|
||||
},
|
||||
api_client=api_client
|
||||
)
|
||||
self.set_task_status_endpoint = _Endpoint(
|
||||
settings={
|
||||
'response_type': None,
|
||||
'auth': [],
|
||||
'endpoint_path': '/api/tasks/{task_id}/setstatus',
|
||||
'operation_id': 'set_task_status',
|
||||
'http_method': 'POST',
|
||||
'servers': None,
|
||||
},
|
||||
params_map={
|
||||
'all': [
|
||||
'task_id',
|
||||
'task_status_change',
|
||||
],
|
||||
'required': [
|
||||
'task_id',
|
||||
'task_status_change',
|
||||
],
|
||||
'nullable': [
|
||||
],
|
||||
'enum': [
|
||||
],
|
||||
'validation': [
|
||||
]
|
||||
},
|
||||
root_map={
|
||||
'validations': {
|
||||
},
|
||||
'allowed_values': {
|
||||
},
|
||||
'openapi_types': {
|
||||
'task_id':
|
||||
(str,),
|
||||
'task_status_change':
|
||||
(TaskStatusChange,),
|
||||
},
|
||||
'attribute_map': {
|
||||
'task_id': 'task_id',
|
||||
},
|
||||
'location_map': {
|
||||
'task_id': 'path',
|
||||
'task_status_change': 'body',
|
||||
},
|
||||
'collection_format_map': {
|
||||
}
|
||||
},
|
||||
headers_map={
|
||||
'accept': [
|
||||
'application/json'
|
||||
],
|
||||
'content_type': [
|
||||
'application/json'
|
||||
]
|
||||
},
|
||||
api_client=api_client
|
||||
)
|
||||
self.submit_job_endpoint = _Endpoint(
|
||||
settings={
|
||||
'response_type': (Job,),
|
||||
@ -977,6 +1034,87 @@ class JobsApi(object):
|
||||
job_status_change
|
||||
return self.set_job_status_endpoint.call_with_http_info(**kwargs)
|
||||
|
||||
def set_task_status(
|
||||
self,
|
||||
task_id,
|
||||
task_status_change,
|
||||
**kwargs
|
||||
):
|
||||
"""set_task_status # noqa: E501
|
||||
|
||||
This method makes a synchronous HTTP request by default. To make an
|
||||
asynchronous HTTP request, please pass async_req=True
|
||||
|
||||
>>> thread = api.set_task_status(task_id, task_status_change, async_req=True)
|
||||
>>> result = thread.get()
|
||||
|
||||
Args:
|
||||
task_id (str):
|
||||
task_status_change (TaskStatusChange): The status change to request.
|
||||
|
||||
Keyword Args:
|
||||
_return_http_data_only (bool): response data without head status
|
||||
code and headers. Default is True.
|
||||
_preload_content (bool): if False, the urllib3.HTTPResponse object
|
||||
will be returned without reading/decoding response data.
|
||||
Default is True.
|
||||
_request_timeout (int/float/tuple): timeout setting for this request. If
|
||||
one number provided, it will be total request timeout. It can also
|
||||
be a pair (tuple) of (connection, read) timeouts.
|
||||
Default is None.
|
||||
_check_input_type (bool): specifies if type checking
|
||||
should be done one the data sent to the server.
|
||||
Default is True.
|
||||
_check_return_type (bool): specifies if type checking
|
||||
should be done one the data received from the server.
|
||||
Default is True.
|
||||
_spec_property_naming (bool): True if the variable names in the input data
|
||||
are serialized names, as specified in the OpenAPI document.
|
||||
False if the variable names in the input data
|
||||
are pythonic names, e.g. snake case (default)
|
||||
_content_type (str/None): force body content-type.
|
||||
Default is None and content-type will be predicted by allowed
|
||||
content-types and body.
|
||||
_host_index (int/None): specifies the index of the server
|
||||
that we want to use.
|
||||
Default is read from the configuration.
|
||||
async_req (bool): execute request asynchronously
|
||||
|
||||
Returns:
|
||||
None
|
||||
If the method is called asynchronously, returns the request
|
||||
thread.
|
||||
"""
|
||||
kwargs['async_req'] = kwargs.get(
|
||||
'async_req', False
|
||||
)
|
||||
kwargs['_return_http_data_only'] = kwargs.get(
|
||||
'_return_http_data_only', True
|
||||
)
|
||||
kwargs['_preload_content'] = kwargs.get(
|
||||
'_preload_content', True
|
||||
)
|
||||
kwargs['_request_timeout'] = kwargs.get(
|
||||
'_request_timeout', None
|
||||
)
|
||||
kwargs['_check_input_type'] = kwargs.get(
|
||||
'_check_input_type', True
|
||||
)
|
||||
kwargs['_check_return_type'] = kwargs.get(
|
||||
'_check_return_type', True
|
||||
)
|
||||
kwargs['_spec_property_naming'] = kwargs.get(
|
||||
'_spec_property_naming', False
|
||||
)
|
||||
kwargs['_content_type'] = kwargs.get(
|
||||
'_content_type')
|
||||
kwargs['_host_index'] = kwargs.get('_host_index')
|
||||
kwargs['task_id'] = \
|
||||
task_id
|
||||
kwargs['task_status_change'] = \
|
||||
task_status_change
|
||||
return self.set_task_status_endpoint.call_with_http_info(**kwargs)
|
||||
|
||||
def submit_job(
|
||||
self,
|
||||
submitted_job,
|
||||
|
@ -76,7 +76,7 @@ class ApiClient(object):
|
||||
self.default_headers[header_name] = header_value
|
||||
self.cookie = cookie
|
||||
# Set default User-Agent.
|
||||
self.user_agent = 'Flamenco/adba7217 (Blender add-on)'
|
||||
self.user_agent = 'Flamenco/9985860c (Blender add-on)'
|
||||
|
||||
def __enter__(self):
|
||||
return self
|
||||
|
@ -404,7 +404,7 @@ conf = flamenco.manager.Configuration(
|
||||
"OS: {env}\n"\
|
||||
"Python Version: {pyversion}\n"\
|
||||
"Version of the API: 1.0.0\n"\
|
||||
"SDK Package Version: adba7217".\
|
||||
"SDK Package Version: 9985860c".\
|
||||
format(env=sys.platform, pyversion=sys.version)
|
||||
|
||||
def get_host_settings(self):
|
||||
|
@ -11,6 +11,7 @@ Method | HTTP request | Description
|
||||
[**get_job_types**](JobsApi.md#get_job_types) | **GET** /api/jobs/types | Get list of job types and their parameters.
|
||||
[**query_jobs**](JobsApi.md#query_jobs) | **POST** /api/jobs/query | Fetch list of jobs.
|
||||
[**set_job_status**](JobsApi.md#set_job_status) | **POST** /api/jobs/{job_id}/setstatus |
|
||||
[**set_task_status**](JobsApi.md#set_task_status) | **POST** /api/tasks/{task_id}/setstatus |
|
||||
[**submit_job**](JobsApi.md#submit_job) | **POST** /api/jobs | Submit a new job for Flamenco Manager to execute.
|
||||
|
||||
|
||||
@ -491,6 +492,77 @@ No authorization required
|
||||
|
||||
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||
|
||||
# **set_task_status**
|
||||
> set_task_status(task_id, task_status_change)
|
||||
|
||||
|
||||
|
||||
### Example
|
||||
|
||||
|
||||
```python
|
||||
import time
|
||||
import flamenco.manager
|
||||
from flamenco.manager.api import jobs_api
|
||||
from flamenco.manager.model.task_status_change import TaskStatusChange
|
||||
from flamenco.manager.model.error import Error
|
||||
from pprint import pprint
|
||||
# Defining the host is optional and defaults to http://localhost
|
||||
# See configuration.py for a list of all supported configuration parameters.
|
||||
configuration = flamenco.manager.Configuration(
|
||||
host = "http://localhost"
|
||||
)
|
||||
|
||||
|
||||
# Enter a context with an instance of the API client
|
||||
with flamenco.manager.ApiClient() as api_client:
|
||||
# Create an instance of the API class
|
||||
api_instance = jobs_api.JobsApi(api_client)
|
||||
task_id = "task_id_example" # str |
|
||||
task_status_change = TaskStatusChange(
|
||||
status=TaskStatus("active"),
|
||||
reason="reason_example",
|
||||
) # TaskStatusChange | The status change to request.
|
||||
|
||||
# example passing only required values which don't have defaults set
|
||||
try:
|
||||
api_instance.set_task_status(task_id, task_status_change)
|
||||
except flamenco.manager.ApiException as e:
|
||||
print("Exception when calling JobsApi->set_task_status: %s\n" % e)
|
||||
```
|
||||
|
||||
|
||||
### Parameters
|
||||
|
||||
Name | Type | Description | Notes
|
||||
------------- | ------------- | ------------- | -------------
|
||||
**task_id** | **str**| |
|
||||
**task_status_change** | [**TaskStatusChange**](TaskStatusChange.md)| The status change to request. |
|
||||
|
||||
### Return type
|
||||
|
||||
void (empty response body)
|
||||
|
||||
### Authorization
|
||||
|
||||
No authorization required
|
||||
|
||||
### HTTP request headers
|
||||
|
||||
- **Content-Type**: application/json
|
||||
- **Accept**: application/json
|
||||
|
||||
|
||||
### HTTP response details
|
||||
|
||||
| Status code | Description | Response headers |
|
||||
|-------------|-------------|------------------|
|
||||
**204** | Status change was accepted. | - |
|
||||
**422** | The requested status change is not valid for the current status of the task. | - |
|
||||
**0** | Unexpected error. | - |
|
||||
|
||||
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||
|
||||
# **submit_job**
|
||||
> Job submit_job(submitted_job)
|
||||
|
||||
|
13
addon/flamenco/manager/docs/TaskStatusChange.md
Normal file
13
addon/flamenco/manager/docs/TaskStatusChange.md
Normal file
@ -0,0 +1,13 @@
|
||||
# TaskStatusChange
|
||||
|
||||
|
||||
## Properties
|
||||
Name | Type | Description | Notes
|
||||
------------ | ------------- | ------------- | -------------
|
||||
**status** | [**TaskStatus**](TaskStatus.md) | |
|
||||
**reason** | **str** | The reason for this status change. |
|
||||
**any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional]
|
||||
|
||||
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
||||
|
||||
|
273
addon/flamenco/manager/model/task_status_change.py
Normal file
273
addon/flamenco/manager/model/task_status_change.py
Normal file
@ -0,0 +1,273 @@
|
||||
"""
|
||||
Flamenco manager
|
||||
|
||||
Render Farm manager API # noqa: E501
|
||||
|
||||
The version of the OpenAPI document: 1.0.0
|
||||
Generated by: https://openapi-generator.tech
|
||||
"""
|
||||
|
||||
|
||||
import re # noqa: F401
|
||||
import sys # noqa: F401
|
||||
|
||||
from flamenco.manager.model_utils import ( # noqa: F401
|
||||
ApiTypeError,
|
||||
ModelComposed,
|
||||
ModelNormal,
|
||||
ModelSimple,
|
||||
cached_property,
|
||||
change_keys_js_to_python,
|
||||
convert_js_args_to_python_args,
|
||||
date,
|
||||
datetime,
|
||||
file_type,
|
||||
none_type,
|
||||
validate_get_composed_info,
|
||||
OpenApiModel
|
||||
)
|
||||
from flamenco.manager.exceptions import ApiAttributeError
|
||||
|
||||
|
||||
def lazy_import():
|
||||
from flamenco.manager.model.task_status import TaskStatus
|
||||
globals()['TaskStatus'] = TaskStatus
|
||||
|
||||
|
||||
class TaskStatusChange(ModelNormal):
|
||||
"""NOTE: This class is auto generated by OpenAPI Generator.
|
||||
Ref: https://openapi-generator.tech
|
||||
|
||||
Do not edit the class manually.
|
||||
|
||||
Attributes:
|
||||
allowed_values (dict): The key is the tuple path to the attribute
|
||||
and the for var_name this is (var_name,). The value is a dict
|
||||
with a capitalized key describing the allowed value and an allowed
|
||||
value. These dicts store the allowed enum values.
|
||||
attribute_map (dict): The key is attribute name
|
||||
and the value is json key in definition.
|
||||
discriminator_value_class_map (dict): A dict to go from the discriminator
|
||||
variable value to the discriminator class name.
|
||||
validations (dict): The key is the tuple path to the attribute
|
||||
and the for var_name this is (var_name,). The value is a dict
|
||||
that stores validations for max_length, min_length, max_items,
|
||||
min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
|
||||
inclusive_minimum, and regex.
|
||||
additional_properties_type (tuple): A tuple of classes accepted
|
||||
as additional properties values.
|
||||
"""
|
||||
|
||||
allowed_values = {
|
||||
}
|
||||
|
||||
validations = {
|
||||
}
|
||||
|
||||
@cached_property
|
||||
def additional_properties_type():
|
||||
"""
|
||||
This must be a method because a model may have properties that are
|
||||
of type self, this must run after the class is loaded
|
||||
"""
|
||||
lazy_import()
|
||||
return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
|
||||
|
||||
_nullable = False
|
||||
|
||||
@cached_property
|
||||
def openapi_types():
|
||||
"""
|
||||
This must be a method because a model may have properties that are
|
||||
of type self, this must run after the class is loaded
|
||||
|
||||
Returns
|
||||
openapi_types (dict): The key is attribute name
|
||||
and the value is attribute type.
|
||||
"""
|
||||
lazy_import()
|
||||
return {
|
||||
'status': (TaskStatus,), # noqa: E501
|
||||
'reason': (str,), # noqa: E501
|
||||
}
|
||||
|
||||
@cached_property
|
||||
def discriminator():
|
||||
return None
|
||||
|
||||
|
||||
attribute_map = {
|
||||
'status': 'status', # noqa: E501
|
||||
'reason': 'reason', # noqa: E501
|
||||
}
|
||||
|
||||
read_only_vars = {
|
||||
}
|
||||
|
||||
_composed_schemas = {}
|
||||
|
||||
@classmethod
|
||||
@convert_js_args_to_python_args
|
||||
def _from_openapi_data(cls, status, reason, *args, **kwargs): # noqa: E501
|
||||
"""TaskStatusChange - a model defined in OpenAPI
|
||||
|
||||
Args:
|
||||
status (TaskStatus):
|
||||
reason (str): The reason for this status change.
|
||||
|
||||
Keyword Args:
|
||||
_check_type (bool): if True, values for parameters in openapi_types
|
||||
will be type checked and a TypeError will be
|
||||
raised if the wrong type is input.
|
||||
Defaults to True
|
||||
_path_to_item (tuple/list): This is a list of keys or values to
|
||||
drill down to the model in received_data
|
||||
when deserializing a response
|
||||
_spec_property_naming (bool): True if the variable names in the input data
|
||||
are serialized names, as specified in the OpenAPI document.
|
||||
False if the variable names in the input data
|
||||
are pythonic names, e.g. snake case (default)
|
||||
_configuration (Configuration): the instance to use when
|
||||
deserializing a file_type parameter.
|
||||
If passed, type conversion is attempted
|
||||
If omitted no type conversion is done.
|
||||
_visited_composed_classes (tuple): This stores a tuple of
|
||||
classes that we have traveled through so that
|
||||
if we see that class again we will not use its
|
||||
discriminator again.
|
||||
When traveling through a discriminator, the
|
||||
composed schema that is
|
||||
is traveled through is added to this set.
|
||||
For example if Animal has a discriminator
|
||||
petType and we pass in "Dog", and the class Dog
|
||||
allOf includes Animal, we move through Animal
|
||||
once using the discriminator, and pick Dog.
|
||||
Then in Dog, we will make an instance of the
|
||||
Animal class but this time we won't travel
|
||||
through its discriminator because we passed in
|
||||
_visited_composed_classes = (Animal,)
|
||||
"""
|
||||
|
||||
_check_type = kwargs.pop('_check_type', True)
|
||||
_spec_property_naming = kwargs.pop('_spec_property_naming', False)
|
||||
_path_to_item = kwargs.pop('_path_to_item', ())
|
||||
_configuration = kwargs.pop('_configuration', None)
|
||||
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
||||
|
||||
self = super(OpenApiModel, cls).__new__(cls)
|
||||
|
||||
if args:
|
||||
raise ApiTypeError(
|
||||
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
||||
args,
|
||||
self.__class__.__name__,
|
||||
),
|
||||
path_to_item=_path_to_item,
|
||||
valid_classes=(self.__class__,),
|
||||
)
|
||||
|
||||
self._data_store = {}
|
||||
self._check_type = _check_type
|
||||
self._spec_property_naming = _spec_property_naming
|
||||
self._path_to_item = _path_to_item
|
||||
self._configuration = _configuration
|
||||
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
||||
|
||||
self.status = status
|
||||
self.reason = reason
|
||||
for var_name, var_value in kwargs.items():
|
||||
if var_name not in self.attribute_map and \
|
||||
self._configuration is not None and \
|
||||
self._configuration.discard_unknown_keys and \
|
||||
self.additional_properties_type is None:
|
||||
# discard variable.
|
||||
continue
|
||||
setattr(self, var_name, var_value)
|
||||
return self
|
||||
|
||||
required_properties = set([
|
||||
'_data_store',
|
||||
'_check_type',
|
||||
'_spec_property_naming',
|
||||
'_path_to_item',
|
||||
'_configuration',
|
||||
'_visited_composed_classes',
|
||||
])
|
||||
|
||||
@convert_js_args_to_python_args
|
||||
def __init__(self, status, reason, *args, **kwargs): # noqa: E501
|
||||
"""TaskStatusChange - a model defined in OpenAPI
|
||||
|
||||
Args:
|
||||
status (TaskStatus):
|
||||
reason (str): The reason for this status change.
|
||||
|
||||
Keyword Args:
|
||||
_check_type (bool): if True, values for parameters in openapi_types
|
||||
will be type checked and a TypeError will be
|
||||
raised if the wrong type is input.
|
||||
Defaults to True
|
||||
_path_to_item (tuple/list): This is a list of keys or values to
|
||||
drill down to the model in received_data
|
||||
when deserializing a response
|
||||
_spec_property_naming (bool): True if the variable names in the input data
|
||||
are serialized names, as specified in the OpenAPI document.
|
||||
False if the variable names in the input data
|
||||
are pythonic names, e.g. snake case (default)
|
||||
_configuration (Configuration): the instance to use when
|
||||
deserializing a file_type parameter.
|
||||
If passed, type conversion is attempted
|
||||
If omitted no type conversion is done.
|
||||
_visited_composed_classes (tuple): This stores a tuple of
|
||||
classes that we have traveled through so that
|
||||
if we see that class again we will not use its
|
||||
discriminator again.
|
||||
When traveling through a discriminator, the
|
||||
composed schema that is
|
||||
is traveled through is added to this set.
|
||||
For example if Animal has a discriminator
|
||||
petType and we pass in "Dog", and the class Dog
|
||||
allOf includes Animal, we move through Animal
|
||||
once using the discriminator, and pick Dog.
|
||||
Then in Dog, we will make an instance of the
|
||||
Animal class but this time we won't travel
|
||||
through its discriminator because we passed in
|
||||
_visited_composed_classes = (Animal,)
|
||||
"""
|
||||
|
||||
_check_type = kwargs.pop('_check_type', True)
|
||||
_spec_property_naming = kwargs.pop('_spec_property_naming', False)
|
||||
_path_to_item = kwargs.pop('_path_to_item', ())
|
||||
_configuration = kwargs.pop('_configuration', None)
|
||||
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
||||
|
||||
if args:
|
||||
raise ApiTypeError(
|
||||
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
||||
args,
|
||||
self.__class__.__name__,
|
||||
),
|
||||
path_to_item=_path_to_item,
|
||||
valid_classes=(self.__class__,),
|
||||
)
|
||||
|
||||
self._data_store = {}
|
||||
self._check_type = _check_type
|
||||
self._spec_property_naming = _spec_property_naming
|
||||
self._path_to_item = _path_to_item
|
||||
self._configuration = _configuration
|
||||
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
||||
|
||||
self.status = status
|
||||
self.reason = reason
|
||||
for var_name, var_value in kwargs.items():
|
||||
if var_name not in self.attribute_map and \
|
||||
self._configuration is not None and \
|
||||
self._configuration.discard_unknown_keys and \
|
||||
self.additional_properties_type is None:
|
||||
# discard variable.
|
||||
continue
|
||||
setattr(self, var_name, var_value)
|
||||
if var_name in self.read_only_vars:
|
||||
raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
|
||||
f"class with read only attributes.")
|
@ -46,6 +46,7 @@ from flamenco.manager.model.socket_io_task_update import SocketIOTaskUpdate
|
||||
from flamenco.manager.model.submitted_job import SubmittedJob
|
||||
from flamenco.manager.model.task import Task
|
||||
from flamenco.manager.model.task_status import TaskStatus
|
||||
from flamenco.manager.model.task_status_change import TaskStatusChange
|
||||
from flamenco.manager.model.task_summary import TaskSummary
|
||||
from flamenco.manager.model.task_update import TaskUpdate
|
||||
from flamenco.manager.model.task_worker import TaskWorker
|
||||
|
@ -4,7 +4,7 @@ Render Farm manager API
|
||||
The `flamenco.manager` package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
||||
|
||||
- API version: 1.0.0
|
||||
- Package version: adba7217
|
||||
- Package version: 9985860c
|
||||
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
|
||||
For more information, please visit [https://flamenco.io/](https://flamenco.io/)
|
||||
|
||||
@ -42,6 +42,7 @@ from flamenco.manager.model.jobs_query import JobsQuery
|
||||
from flamenco.manager.model.jobs_query_result import JobsQueryResult
|
||||
from flamenco.manager.model.submitted_job import SubmittedJob
|
||||
from flamenco.manager.model.task import Task
|
||||
from flamenco.manager.model.task_status_change import TaskStatusChange
|
||||
# Defining the host is optional and defaults to http://localhost
|
||||
# See configuration.py for a list of all supported configuration parameters.
|
||||
configuration = flamenco.manager.Configuration(
|
||||
@ -77,6 +78,7 @@ Class | Method | HTTP request | Description
|
||||
*JobsApi* | [**get_job_types**](flamenco/manager/docs/JobsApi.md#get_job_types) | **GET** /api/jobs/types | Get list of job types and their parameters.
|
||||
*JobsApi* | [**query_jobs**](flamenco/manager/docs/JobsApi.md#query_jobs) | **POST** /api/jobs/query | Fetch list of jobs.
|
||||
*JobsApi* | [**set_job_status**](flamenco/manager/docs/JobsApi.md#set_job_status) | **POST** /api/jobs/{job_id}/setstatus |
|
||||
*JobsApi* | [**set_task_status**](flamenco/manager/docs/JobsApi.md#set_task_status) | **POST** /api/tasks/{task_id}/setstatus |
|
||||
*JobsApi* | [**submit_job**](flamenco/manager/docs/JobsApi.md#submit_job) | **POST** /api/jobs | Submit a new job for Flamenco Manager to execute.
|
||||
*MetaApi* | [**get_configuration**](flamenco/manager/docs/MetaApi.md#get_configuration) | **GET** /api/configuration | Get the configuration of this Manager.
|
||||
*MetaApi* | [**get_version**](flamenco/manager/docs/MetaApi.md#get_version) | **GET** /api/version | Get the Flamenco version of this Manager
|
||||
@ -132,6 +134,7 @@ Class | Method | HTTP request | Description
|
||||
- [SubmittedJob](flamenco/manager/docs/SubmittedJob.md)
|
||||
- [Task](flamenco/manager/docs/Task.md)
|
||||
- [TaskStatus](flamenco/manager/docs/TaskStatus.md)
|
||||
- [TaskStatusChange](flamenco/manager/docs/TaskStatusChange.md)
|
||||
- [TaskSummary](flamenco/manager/docs/TaskSummary.md)
|
||||
- [TaskUpdate](flamenco/manager/docs/TaskUpdate.md)
|
||||
- [TaskWorker](flamenco/manager/docs/TaskWorker.md)
|
||||
|
@ -316,6 +316,46 @@ func (mr *MockFlamencoClientMockRecorder) SetJobStatusWithResponse(arg0, arg1, a
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetJobStatusWithResponse", reflect.TypeOf((*MockFlamencoClient)(nil).SetJobStatusWithResponse), varargs...)
|
||||
}
|
||||
|
||||
// SetTaskStatusWithBodyWithResponse mocks base method.
|
||||
func (m *MockFlamencoClient) SetTaskStatusWithBodyWithResponse(arg0 context.Context, arg1, arg2 string, arg3 io.Reader, arg4 ...api.RequestEditorFn) (*api.SetTaskStatusResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1, arg2, arg3}
|
||||
for _, a := range arg4 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "SetTaskStatusWithBodyWithResponse", varargs...)
|
||||
ret0, _ := ret[0].(*api.SetTaskStatusResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// SetTaskStatusWithBodyWithResponse indicates an expected call of SetTaskStatusWithBodyWithResponse.
|
||||
func (mr *MockFlamencoClientMockRecorder) SetTaskStatusWithBodyWithResponse(arg0, arg1, arg2, arg3 interface{}, arg4 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1, arg2, arg3}, arg4...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTaskStatusWithBodyWithResponse", reflect.TypeOf((*MockFlamencoClient)(nil).SetTaskStatusWithBodyWithResponse), varargs...)
|
||||
}
|
||||
|
||||
// SetTaskStatusWithResponse mocks base method.
|
||||
func (m *MockFlamencoClient) SetTaskStatusWithResponse(arg0 context.Context, arg1 string, arg2 api.SetTaskStatusJSONRequestBody, arg3 ...api.RequestEditorFn) (*api.SetTaskStatusResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1, arg2}
|
||||
for _, a := range arg3 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "SetTaskStatusWithResponse", varargs...)
|
||||
ret0, _ := ret[0].(*api.SetTaskStatusResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// SetTaskStatusWithResponse indicates an expected call of SetTaskStatusWithResponse.
|
||||
func (mr *MockFlamencoClientMockRecorder) SetTaskStatusWithResponse(arg0, arg1, arg2 interface{}, arg3 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1, arg2}, arg3...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetTaskStatusWithResponse", reflect.TypeOf((*MockFlamencoClient)(nil).SetTaskStatusWithResponse), varargs...)
|
||||
}
|
||||
|
||||
// ShamanCheckoutRequirementsWithBodyWithResponse mocks base method.
|
||||
func (m *MockFlamencoClient) ShamanCheckoutRequirementsWithBodyWithResponse(arg0 context.Context, arg1 string, arg2 io.Reader, arg3 ...api.RequestEditorFn) (*api.ShamanCheckoutRequirementsResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
|
@ -123,6 +123,11 @@ type ClientInterface interface {
|
||||
// FetchTask request
|
||||
FetchTask(ctx context.Context, taskId string, reqEditors ...RequestEditorFn) (*http.Response, error)
|
||||
|
||||
// SetTaskStatus request with any body
|
||||
SetTaskStatusWithBody(ctx context.Context, taskId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)
|
||||
|
||||
SetTaskStatus(ctx context.Context, taskId string, body SetTaskStatusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)
|
||||
|
||||
// GetVersion request
|
||||
GetVersion(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)
|
||||
|
||||
@ -316,6 +321,30 @@ func (c *Client) FetchTask(ctx context.Context, taskId string, reqEditors ...Req
|
||||
return c.Client.Do(req)
|
||||
}
|
||||
|
||||
func (c *Client) SetTaskStatusWithBody(ctx context.Context, taskId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) {
|
||||
req, err := NewSetTaskStatusRequestWithBody(c.Server, taskId, contentType, body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
req = req.WithContext(ctx)
|
||||
if err := c.applyEditors(ctx, req, reqEditors); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return c.Client.Do(req)
|
||||
}
|
||||
|
||||
func (c *Client) SetTaskStatus(ctx context.Context, taskId string, body SetTaskStatusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) {
|
||||
req, err := NewSetTaskStatusRequest(c.Server, taskId, body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
req = req.WithContext(ctx)
|
||||
if err := c.applyEditors(ctx, req, reqEditors); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return c.Client.Do(req)
|
||||
}
|
||||
|
||||
func (c *Client) GetVersion(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) {
|
||||
req, err := NewGetVersionRequest(c.Server)
|
||||
if err != nil {
|
||||
@ -849,6 +878,53 @@ func NewFetchTaskRequest(server string, taskId string) (*http.Request, error) {
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// NewSetTaskStatusRequest calls the generic SetTaskStatus builder with application/json body
|
||||
func NewSetTaskStatusRequest(server string, taskId string, body SetTaskStatusJSONRequestBody) (*http.Request, error) {
|
||||
var bodyReader io.Reader
|
||||
buf, err := json.Marshal(body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
bodyReader = bytes.NewReader(buf)
|
||||
return NewSetTaskStatusRequestWithBody(server, taskId, "application/json", bodyReader)
|
||||
}
|
||||
|
||||
// NewSetTaskStatusRequestWithBody generates requests for SetTaskStatus with any type of body
|
||||
func NewSetTaskStatusRequestWithBody(server string, taskId string, contentType string, body io.Reader) (*http.Request, error) {
|
||||
var err error
|
||||
|
||||
var pathParam0 string
|
||||
|
||||
pathParam0, err = runtime.StyleParamWithLocation("simple", false, "task_id", runtime.ParamLocationPath, taskId)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
serverURL, err := url.Parse(server)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
operationPath := fmt.Sprintf("/api/tasks/%s/setstatus", pathParam0)
|
||||
if operationPath[0] == '/' {
|
||||
operationPath = "." + operationPath
|
||||
}
|
||||
|
||||
queryURL, err := serverURL.Parse(operationPath)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
req, err := http.NewRequest("POST", queryURL.String(), body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
req.Header.Add("Content-Type", contentType)
|
||||
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// NewGetVersionRequest generates requests for GetVersion
|
||||
func NewGetVersionRequest(server string) (*http.Request, error) {
|
||||
var err error
|
||||
@ -1386,6 +1462,11 @@ type ClientWithResponsesInterface interface {
|
||||
// FetchTask request
|
||||
FetchTaskWithResponse(ctx context.Context, taskId string, reqEditors ...RequestEditorFn) (*FetchTaskResponse, error)
|
||||
|
||||
// SetTaskStatus request with any body
|
||||
SetTaskStatusWithBodyWithResponse(ctx context.Context, taskId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*SetTaskStatusResponse, error)
|
||||
|
||||
SetTaskStatusWithResponse(ctx context.Context, taskId string, body SetTaskStatusJSONRequestBody, reqEditors ...RequestEditorFn) (*SetTaskStatusResponse, error)
|
||||
|
||||
// GetVersion request
|
||||
GetVersionWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetVersionResponse, error)
|
||||
|
||||
@ -1637,6 +1718,28 @@ func (r FetchTaskResponse) StatusCode() int {
|
||||
return 0
|
||||
}
|
||||
|
||||
type SetTaskStatusResponse struct {
|
||||
Body []byte
|
||||
HTTPResponse *http.Response
|
||||
JSONDefault *Error
|
||||
}
|
||||
|
||||
// Status returns HTTPResponse.Status
|
||||
func (r SetTaskStatusResponse) Status() string {
|
||||
if r.HTTPResponse != nil {
|
||||
return r.HTTPResponse.Status
|
||||
}
|
||||
return http.StatusText(0)
|
||||
}
|
||||
|
||||
// StatusCode returns HTTPResponse.StatusCode
|
||||
func (r SetTaskStatusResponse) StatusCode() int {
|
||||
if r.HTTPResponse != nil {
|
||||
return r.HTTPResponse.StatusCode
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type GetVersionResponse struct {
|
||||
Body []byte
|
||||
HTTPResponse *http.Response
|
||||
@ -2016,6 +2119,23 @@ func (c *ClientWithResponses) FetchTaskWithResponse(ctx context.Context, taskId
|
||||
return ParseFetchTaskResponse(rsp)
|
||||
}
|
||||
|
||||
// SetTaskStatusWithBodyWithResponse request with arbitrary body returning *SetTaskStatusResponse
|
||||
func (c *ClientWithResponses) SetTaskStatusWithBodyWithResponse(ctx context.Context, taskId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*SetTaskStatusResponse, error) {
|
||||
rsp, err := c.SetTaskStatusWithBody(ctx, taskId, contentType, body, reqEditors...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return ParseSetTaskStatusResponse(rsp)
|
||||
}
|
||||
|
||||
func (c *ClientWithResponses) SetTaskStatusWithResponse(ctx context.Context, taskId string, body SetTaskStatusJSONRequestBody, reqEditors ...RequestEditorFn) (*SetTaskStatusResponse, error) {
|
||||
rsp, err := c.SetTaskStatus(ctx, taskId, body, reqEditors...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return ParseSetTaskStatusResponse(rsp)
|
||||
}
|
||||
|
||||
// GetVersionWithResponse request returning *GetVersionResponse
|
||||
func (c *ClientWithResponses) GetVersionWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetVersionResponse, error) {
|
||||
rsp, err := c.GetVersion(ctx, reqEditors...)
|
||||
@ -2434,6 +2554,32 @@ func ParseFetchTaskResponse(rsp *http.Response) (*FetchTaskResponse, error) {
|
||||
return response, nil
|
||||
}
|
||||
|
||||
// ParseSetTaskStatusResponse parses an HTTP response from a SetTaskStatusWithResponse call
|
||||
func ParseSetTaskStatusResponse(rsp *http.Response) (*SetTaskStatusResponse, error) {
|
||||
bodyBytes, err := ioutil.ReadAll(rsp.Body)
|
||||
defer func() { _ = rsp.Body.Close() }()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
response := &SetTaskStatusResponse{
|
||||
Body: bodyBytes,
|
||||
HTTPResponse: rsp,
|
||||
}
|
||||
|
||||
switch {
|
||||
case strings.Contains(rsp.Header.Get("Content-Type"), "json") && true:
|
||||
var dest Error
|
||||
if err := json.Unmarshal(bodyBytes, &dest); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
response.JSONDefault = &dest
|
||||
|
||||
}
|
||||
|
||||
return response, nil
|
||||
}
|
||||
|
||||
// ParseGetVersionResponse parses an HTTP response from a GetVersionWithResponse call
|
||||
func ParseGetVersionResponse(rsp *http.Response) (*GetVersionResponse, error) {
|
||||
bodyBytes, err := ioutil.ReadAll(rsp.Body)
|
||||
|
@ -40,6 +40,9 @@ type ServerInterface interface {
|
||||
// Fetch a single task.
|
||||
// (GET /api/tasks/{task_id})
|
||||
FetchTask(ctx echo.Context, taskId string) error
|
||||
|
||||
// (POST /api/tasks/{task_id}/setstatus)
|
||||
SetTaskStatus(ctx echo.Context, taskId string) error
|
||||
// Get the Flamenco version of this Manager
|
||||
// (GET /api/version)
|
||||
GetVersion(ctx echo.Context) error
|
||||
@ -200,6 +203,22 @@ func (w *ServerInterfaceWrapper) FetchTask(ctx echo.Context) error {
|
||||
return err
|
||||
}
|
||||
|
||||
// SetTaskStatus converts echo context to params.
|
||||
func (w *ServerInterfaceWrapper) SetTaskStatus(ctx echo.Context) error {
|
||||
var err error
|
||||
// ------------- Path parameter "task_id" -------------
|
||||
var taskId string
|
||||
|
||||
err = runtime.BindStyledParameterWithLocation("simple", false, "task_id", runtime.ParamLocationPath, ctx.Param("task_id"), &taskId)
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter task_id: %s", err))
|
||||
}
|
||||
|
||||
// Invoke the callback with all the unmarshalled arguments
|
||||
err = w.Handler.SetTaskStatus(ctx, taskId)
|
||||
return err
|
||||
}
|
||||
|
||||
// GetVersion converts echo context to params.
|
||||
func (w *ServerInterfaceWrapper) GetVersion(ctx echo.Context) error {
|
||||
var err error
|
||||
@ -429,6 +448,7 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL
|
||||
router.POST(baseURL+"/api/jobs/:job_id/setstatus", wrapper.SetJobStatus)
|
||||
router.GET(baseURL+"/api/jobs/:job_id/tasks", wrapper.FetchJobTasks)
|
||||
router.GET(baseURL+"/api/tasks/:task_id", wrapper.FetchTask)
|
||||
router.POST(baseURL+"/api/tasks/:task_id/setstatus", wrapper.SetTaskStatus)
|
||||
router.GET(baseURL+"/api/version", wrapper.GetVersion)
|
||||
router.POST(baseURL+"/api/worker/register-worker", wrapper.RegisterWorker)
|
||||
router.POST(baseURL+"/api/worker/sign-off", wrapper.SignOff)
|
||||
|
@ -18,119 +18,121 @@ import (
|
||||
// Base64 encoded, gzipped, json marshaled Swagger object
|
||||
var swaggerSpec = []string{
|
||||
|
||||
"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",
|
||||
}
|
||||
|
||||
// GetSwagger returns the content of the embedded swagger specification file
|
||||
|
@ -447,6 +447,13 @@ type Task struct {
|
||||
// TaskStatus defines model for TaskStatus.
|
||||
type TaskStatus string
|
||||
|
||||
// TaskStatusChange defines model for TaskStatusChange.
|
||||
type TaskStatusChange struct {
|
||||
// The reason for this status change.
|
||||
Reason string `json:"reason"`
|
||||
Status TaskStatus `json:"status"`
|
||||
}
|
||||
|
||||
// Just enough information about the task to show in the job's task list.
|
||||
type TaskSummary struct {
|
||||
Id string `json:"id"`
|
||||
@ -511,6 +518,9 @@ type QueryJobsJSONBody JobsQuery
|
||||
// SetJobStatusJSONBody defines parameters for SetJobStatus.
|
||||
type SetJobStatusJSONBody JobStatusChange
|
||||
|
||||
// SetTaskStatusJSONBody defines parameters for SetTaskStatus.
|
||||
type SetTaskStatusJSONBody TaskStatusChange
|
||||
|
||||
// RegisterWorkerJSONBody defines parameters for RegisterWorker.
|
||||
type RegisterWorkerJSONBody WorkerRegistration
|
||||
|
||||
@ -547,6 +557,9 @@ type QueryJobsJSONRequestBody QueryJobsJSONBody
|
||||
// SetJobStatusJSONRequestBody defines body for SetJobStatus for application/json ContentType.
|
||||
type SetJobStatusJSONRequestBody SetJobStatusJSONBody
|
||||
|
||||
// SetTaskStatusJSONRequestBody defines body for SetTaskStatus for application/json ContentType.
|
||||
type SetTaskStatusJSONRequestBody SetTaskStatusJSONBody
|
||||
|
||||
// RegisterWorkerJSONRequestBody defines body for RegisterWorker for application/json ContentType.
|
||||
type RegisterWorkerJSONRequestBody RegisterWorkerJSONBody
|
||||
|
||||
|
@ -55,7 +55,7 @@ class ApiClient {
|
||||
* @default {}
|
||||
*/
|
||||
this.defaultHeaders = {
|
||||
'User-Agent': 'Flamenco/adba7217 / webbrowser'
|
||||
'User-Agent': 'Flamenco/9985860c / webbrowser'
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -48,6 +48,7 @@ import SocketIOTaskUpdate from './model/SocketIOTaskUpdate';
|
||||
import SubmittedJob from './model/SubmittedJob';
|
||||
import Task from './model/Task';
|
||||
import TaskStatus from './model/TaskStatus';
|
||||
import TaskStatusChange from './model/TaskStatusChange';
|
||||
import TaskSummary from './model/TaskSummary';
|
||||
import TaskUpdate from './model/TaskUpdate';
|
||||
import TaskWorker from './model/TaskWorker';
|
||||
@ -310,6 +311,12 @@ export {
|
||||
*/
|
||||
TaskStatus,
|
||||
|
||||
/**
|
||||
* The TaskStatusChange model constructor.
|
||||
* @property {module:model/TaskStatusChange}
|
||||
*/
|
||||
TaskStatusChange,
|
||||
|
||||
/**
|
||||
* The TaskSummary model constructor.
|
||||
* @property {module:model/TaskSummary}
|
||||
|
@ -23,6 +23,7 @@ import JobsQuery from '../model/JobsQuery';
|
||||
import JobsQueryResult from '../model/JobsQueryResult';
|
||||
import SubmittedJob from '../model/SubmittedJob';
|
||||
import Task from '../model/Task';
|
||||
import TaskStatusChange from '../model/TaskStatusChange';
|
||||
|
||||
/**
|
||||
* Jobs service.
|
||||
@ -362,6 +363,56 @@ export default class JobsApi {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param {String} taskId
|
||||
* @param {module:model/TaskStatusChange} taskStatusChange The status change to request.
|
||||
* @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing HTTP response
|
||||
*/
|
||||
setTaskStatusWithHttpInfo(taskId, taskStatusChange) {
|
||||
let postBody = taskStatusChange;
|
||||
// verify the required parameter 'taskId' is set
|
||||
if (taskId === undefined || taskId === null) {
|
||||
throw new Error("Missing the required parameter 'taskId' when calling setTaskStatus");
|
||||
}
|
||||
// verify the required parameter 'taskStatusChange' is set
|
||||
if (taskStatusChange === undefined || taskStatusChange === null) {
|
||||
throw new Error("Missing the required parameter 'taskStatusChange' when calling setTaskStatus");
|
||||
}
|
||||
|
||||
let pathParams = {
|
||||
'task_id': taskId
|
||||
};
|
||||
let queryParams = {
|
||||
};
|
||||
let headerParams = {
|
||||
};
|
||||
let formParams = {
|
||||
};
|
||||
|
||||
let authNames = [];
|
||||
let contentTypes = ['application/json'];
|
||||
let accepts = ['application/json'];
|
||||
let returnType = null;
|
||||
return this.apiClient.callApi(
|
||||
'/api/tasks/{task_id}/setstatus', 'POST',
|
||||
pathParams, queryParams, headerParams, formParams, postBody,
|
||||
authNames, contentTypes, accepts, returnType, null
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {String} taskId
|
||||
* @param {module:model/TaskStatusChange} taskStatusChange The status change to request.
|
||||
* @return {Promise} a {@link https://www.promisejs.org/|Promise}
|
||||
*/
|
||||
setTaskStatus(taskId, taskStatusChange) {
|
||||
return this.setTaskStatusWithHttpInfo(taskId, taskStatusChange)
|
||||
.then(function(response_and_data) {
|
||||
return response_and_data.data;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Submit a new job for Flamenco Manager to execute.
|
||||
* @param {module:model/SubmittedJob} submittedJob Job to submit
|
||||
|
85
web/app/src/manager-api/model/TaskStatusChange.js
Normal file
85
web/app/src/manager-api/model/TaskStatusChange.js
Normal file
@ -0,0 +1,85 @@
|
||||
/**
|
||||
* Flamenco manager
|
||||
* Render Farm manager API
|
||||
*
|
||||
* The version of the OpenAPI document: 1.0.0
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*
|
||||
*/
|
||||
|
||||
import ApiClient from '../ApiClient';
|
||||
import TaskStatus from './TaskStatus';
|
||||
|
||||
/**
|
||||
* The TaskStatusChange model module.
|
||||
* @module model/TaskStatusChange
|
||||
* @version 0.0.0
|
||||
*/
|
||||
class TaskStatusChange {
|
||||
/**
|
||||
* Constructs a new <code>TaskStatusChange</code>.
|
||||
* @alias module:model/TaskStatusChange
|
||||
* @param status {module:model/TaskStatus}
|
||||
* @param reason {String} The reason for this status change.
|
||||
*/
|
||||
constructor(status, reason) {
|
||||
|
||||
TaskStatusChange.initialize(this, status, reason);
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the fields of this object.
|
||||
* This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins).
|
||||
* Only for internal use.
|
||||
*/
|
||||
static initialize(obj, status, reason) {
|
||||
obj['status'] = status;
|
||||
obj['reason'] = reason;
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a <code>TaskStatusChange</code> from a plain JavaScript object, optionally creating a new instance.
|
||||
* Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
|
||||
* @param {Object} data The plain JavaScript object bearing properties of interest.
|
||||
* @param {module:model/TaskStatusChange} obj Optional instance to populate.
|
||||
* @return {module:model/TaskStatusChange} The populated <code>TaskStatusChange</code> instance.
|
||||
*/
|
||||
static constructFromObject(data, obj) {
|
||||
if (data) {
|
||||
obj = obj || new TaskStatusChange();
|
||||
|
||||
if (data.hasOwnProperty('status')) {
|
||||
obj['status'] = TaskStatus.constructFromObject(data['status']);
|
||||
}
|
||||
if (data.hasOwnProperty('reason')) {
|
||||
obj['reason'] = ApiClient.convertToType(data['reason'], 'String');
|
||||
}
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @member {module:model/TaskStatus} status
|
||||
*/
|
||||
TaskStatusChange.prototype['status'] = undefined;
|
||||
|
||||
/**
|
||||
* The reason for this status change.
|
||||
* @member {String} reason
|
||||
*/
|
||||
TaskStatusChange.prototype['reason'] = undefined;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export default TaskStatusChange;
|
||||
|
Loading…
x
Reference in New Issue
Block a user