OAPI: regenerate code

This commit is contained in:
Sybren A. Stüvel 2022-07-01 12:32:42 +02:00
parent 60f3f5482d
commit 801fa20f12
16 changed files with 526 additions and 164 deletions

View File

@ -10,7 +10,7 @@
"""
__version__ = "cca81558"
__version__ = "60f3f548"
# import ApiClient
from flamenco.manager.api_client import ApiClient

View File

@ -47,6 +47,48 @@ class JobsApi(object):
if api_client is None:
api_client = ApiClient()
self.api_client = api_client
self.fetch_global_last_rendered_info_endpoint = _Endpoint(
settings={
'response_type': (JobLastRenderedImageInfo,),
'auth': [],
'endpoint_path': '/api/jobs/last-rendered',
'operation_id': 'fetch_global_last_rendered_info',
'http_method': 'GET',
'servers': None,
},
params_map={
'all': [
],
'required': [],
'nullable': [
],
'enum': [
],
'validation': [
]
},
root_map={
'validations': {
},
'allowed_values': {
},
'openapi_types': {
},
'attribute_map': {
},
'location_map': {
},
'collection_format_map': {
}
},
headers_map={
'accept': [
'application/json'
],
'content_type': [],
},
api_client=api_client
)
self.fetch_job_endpoint = _Endpoint(
settings={
'response_type': (Job,),
@ -701,6 +743,78 @@ class JobsApi(object):
api_client=api_client
)
def fetch_global_last_rendered_info(
self,
**kwargs
):
"""Get the URL that serves the last-rendered images. # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
>>> thread = api.fetch_global_last_rendered_info(async_req=True)
>>> result = thread.get()
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:
JobLastRenderedImageInfo
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')
return self.fetch_global_last_rendered_info_endpoint.call_with_http_info(**kwargs)
def fetch_job(
self,
job_id,

View File

@ -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/cca81558 (Blender add-on)'
self.user_agent = 'Flamenco/60f3f548 (Blender add-on)'
def __enter__(self):
return self
@ -774,10 +774,10 @@ class Endpoint(object):
Example:
api_instance = JobsApi()
api_instance.fetch_job # this is an instance of the class Endpoint
api_instance.fetch_job() # this invokes api_instance.fetch_job.__call__()
api_instance.fetch_global_last_rendered_info # this is an instance of the class Endpoint
api_instance.fetch_global_last_rendered_info() # this invokes api_instance.fetch_global_last_rendered_info.__call__()
which then invokes the callable functions stored in that endpoint at
api_instance.fetch_job.callable or self.callable in this class
api_instance.fetch_global_last_rendered_info.callable or self.callable in this class
"""
return self.callable(self, *args, **kwargs)

View File

@ -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: cca81558".\
"SDK Package Version: 60f3f548".\
format(env=sys.platform, pyversion=sys.version)
def get_host_settings(self):

View File

@ -4,6 +4,7 @@ All URIs are relative to *http://localhost*
Method | HTTP request | Description
------------- | ------------- | -------------
[**fetch_global_last_rendered_info**](JobsApi.md#fetch_global_last_rendered_info) | **GET** /api/jobs/last-rendered | Get the URL that serves the last-rendered images.
[**fetch_job**](JobsApi.md#fetch_job) | **GET** /api/jobs/{job_id} | Fetch info about the job.
[**fetch_job_blocklist**](JobsApi.md#fetch_job_blocklist) | **GET** /api/jobs/{job_id}/blocklist | Fetch the list of workers that are blocked from doing certain task types on this job.
[**fetch_job_last_rendered_info**](JobsApi.md#fetch_job_last_rendered_info) | **GET** /api/jobs/{job_id}/last-rendered | Get the URL that serves the last-rendered images of this job.
@ -19,6 +20,68 @@ Method | HTTP request | Description
[**submit_job**](JobsApi.md#submit_job) | **POST** /api/jobs | Submit a new job for Flamenco Manager to execute.
# **fetch_global_last_rendered_info**
> JobLastRenderedImageInfo fetch_global_last_rendered_info()
Get the URL that serves the last-rendered images.
### Example
```python
import time
import flamenco.manager
from flamenco.manager.api import jobs_api
from flamenco.manager.model.job_last_rendered_image_info import JobLastRenderedImageInfo
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)
# example, this endpoint has no required or optional parameters
try:
# Get the URL that serves the last-rendered images.
api_response = api_instance.fetch_global_last_rendered_info()
pprint(api_response)
except flamenco.manager.ApiException as e:
print("Exception when calling JobsApi->fetch_global_last_rendered_info: %s\n" % e)
```
### Parameters
This endpoint does not need any parameter.
### Return type
[**JobLastRenderedImageInfo**](JobLastRenderedImageInfo.md)
### Authorization
No authorization required
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json
### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
**200** | Normal response. | - |
**204** | This job doesn't have any last-rendered image. | - |
[[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)
# **fetch_job**
> Job fetch_job(job_id)

View File

@ -5,7 +5,7 @@ What kind of thing to subscribe to / unsubscribe from.
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**value** | **str** | What kind of thing to subscribe to / unsubscribe from. | must be one of ["allJobs", "allWorkers", "job", "tasklog", ]
**value** | **str** | What kind of thing to subscribe to / unsubscribe from. | must be one of ["allJobs", "allWorkers", "job", "tasklog", "allLastRendered", ]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -56,6 +56,7 @@ class SocketIOSubscriptionType(ModelSimple):
'ALLWORKERS': "allWorkers",
'JOB': "job",
'TASKLOG': "tasklog",
'ALLLASTRENDERED': "allLastRendered",
},
}
@ -107,10 +108,10 @@ class SocketIOSubscriptionType(ModelSimple):
Note that value can be passed either in args or in kwargs, but not in both.
Args:
args[0] (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", ] # noqa: E501
args[0] (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", "allLastRendered", ] # noqa: E501
Keyword Args:
value (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", ] # noqa: E501
value (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", "allLastRendered", ] # noqa: E501
_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.
@ -197,10 +198,10 @@ class SocketIOSubscriptionType(ModelSimple):
Note that value can be passed either in args or in kwargs, but not in both.
Args:
args[0] (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", ] # noqa: E501
args[0] (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", "allLastRendered", ] # noqa: E501
Keyword Args:
value (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", ] # noqa: E501
value (str): What kind of thing to subscribe to / unsubscribe from.., must be one of ["allJobs", "allWorkers", "job", "tasklog", "allLastRendered", ] # noqa: E501
_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.

View File

@ -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: cca81558
- Package version: 60f3f548
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
For more information, please visit [https://flamenco.io/](https://flamenco.io/)
@ -57,14 +57,13 @@ configuration = flamenco.manager.Configuration(
with flamenco.manager.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = jobs_api.JobsApi(api_client)
job_id = "job_id_example" # str |
try:
# Fetch info about the job.
api_response = api_instance.fetch_job(job_id)
# Get the URL that serves the last-rendered images.
api_response = api_instance.fetch_global_last_rendered_info()
pprint(api_response)
except flamenco.manager.ApiException as e:
print("Exception when calling JobsApi->fetch_job: %s\n" % e)
print("Exception when calling JobsApi->fetch_global_last_rendered_info: %s\n" % e)
```
## Documentation for API Endpoints
@ -73,6 +72,7 @@ All URIs are relative to *http://localhost*
Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*JobsApi* | [**fetch_global_last_rendered_info**](flamenco/manager/docs/JobsApi.md#fetch_global_last_rendered_info) | **GET** /api/jobs/last-rendered | Get the URL that serves the last-rendered images.
*JobsApi* | [**fetch_job**](flamenco/manager/docs/JobsApi.md#fetch_job) | **GET** /api/jobs/{job_id} | Fetch info about the job.
*JobsApi* | [**fetch_job_blocklist**](flamenco/manager/docs/JobsApi.md#fetch_job_blocklist) | **GET** /api/jobs/{job_id}/blocklist | Fetch the list of workers that are blocked from doing certain task types on this job.
*JobsApi* | [**fetch_job_last_rendered_info**](flamenco/manager/docs/JobsApi.md#fetch_job_last_rendered_info) | **GET** /api/jobs/{job_id}/last-rendered | Get the URL that serves the last-rendered images of this job.

View File

@ -36,6 +36,26 @@ func (m *MockFlamencoClient) EXPECT() *MockFlamencoClientMockRecorder {
return m.recorder
}
// FetchGlobalLastRenderedInfoWithResponse mocks base method.
func (m *MockFlamencoClient) FetchGlobalLastRenderedInfoWithResponse(arg0 context.Context, arg1 ...api.RequestEditorFn) (*api.FetchGlobalLastRenderedInfoResponse, error) {
m.ctrl.T.Helper()
varargs := []interface{}{arg0}
for _, a := range arg1 {
varargs = append(varargs, a)
}
ret := m.ctrl.Call(m, "FetchGlobalLastRenderedInfoWithResponse", varargs...)
ret0, _ := ret[0].(*api.FetchGlobalLastRenderedInfoResponse)
ret1, _ := ret[1].(error)
return ret0, ret1
}
// FetchGlobalLastRenderedInfoWithResponse indicates an expected call of FetchGlobalLastRenderedInfoWithResponse.
func (mr *MockFlamencoClientMockRecorder) FetchGlobalLastRenderedInfoWithResponse(arg0 interface{}, arg1 ...interface{}) *gomock.Call {
mr.mock.ctrl.T.Helper()
varargs := append([]interface{}{arg0}, arg1...)
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FetchGlobalLastRenderedInfoWithResponse", reflect.TypeOf((*MockFlamencoClient)(nil).FetchGlobalLastRenderedInfoWithResponse), varargs...)
}
// FetchJobBlocklistWithResponse mocks base method.
func (m *MockFlamencoClient) FetchJobBlocklistWithResponse(arg0 context.Context, arg1 string, arg2 ...api.RequestEditorFn) (*api.FetchJobBlocklistResponse, error) {
m.ctrl.T.Helper()

View File

@ -98,6 +98,9 @@ type ClientInterface interface {
SubmitJob(ctx context.Context, body SubmitJobJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)
// FetchGlobalLastRenderedInfo request
FetchGlobalLastRenderedInfo(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)
// QueryJobs request with any body
QueryJobsWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)
@ -244,6 +247,18 @@ func (c *Client) SubmitJob(ctx context.Context, body SubmitJobJSONRequestBody, r
return c.Client.Do(req)
}
func (c *Client) FetchGlobalLastRenderedInfo(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) {
req, err := NewFetchGlobalLastRenderedInfoRequest(c.Server)
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) QueryJobsWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) {
req, err := NewQueryJobsRequestWithBody(c.Server, contentType, body)
if err != nil {
@ -791,6 +806,33 @@ func NewSubmitJobRequestWithBody(server string, contentType string, body io.Read
return req, nil
}
// NewFetchGlobalLastRenderedInfoRequest generates requests for FetchGlobalLastRenderedInfo
func NewFetchGlobalLastRenderedInfoRequest(server string) (*http.Request, error) {
var err error
serverURL, err := url.Parse(server)
if err != nil {
return nil, err
}
operationPath := fmt.Sprintf("/api/jobs/last-rendered")
if operationPath[0] == '/' {
operationPath = "." + operationPath
}
queryURL, err := serverURL.Parse(operationPath)
if err != nil {
return nil, err
}
req, err := http.NewRequest("GET", queryURL.String(), nil)
if err != nil {
return nil, err
}
return req, nil
}
// NewQueryJobsRequest calls the generic QueryJobs builder with application/json body
func NewQueryJobsRequest(server string, body QueryJobsJSONRequestBody) (*http.Request, error) {
var bodyReader io.Reader
@ -1927,6 +1969,9 @@ type ClientWithResponsesInterface interface {
SubmitJobWithResponse(ctx context.Context, body SubmitJobJSONRequestBody, reqEditors ...RequestEditorFn) (*SubmitJobResponse, error)
// FetchGlobalLastRenderedInfo request
FetchGlobalLastRenderedInfoWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*FetchGlobalLastRenderedInfoResponse, error)
// QueryJobs request with any body
QueryJobsWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*QueryJobsResponse, error)
@ -2082,6 +2127,28 @@ func (r SubmitJobResponse) StatusCode() int {
return 0
}
type FetchGlobalLastRenderedInfoResponse struct {
Body []byte
HTTPResponse *http.Response
JSON200 *JobLastRenderedImageInfo
}
// Status returns HTTPResponse.Status
func (r FetchGlobalLastRenderedInfoResponse) Status() string {
if r.HTTPResponse != nil {
return r.HTTPResponse.Status
}
return http.StatusText(0)
}
// StatusCode returns HTTPResponse.StatusCode
func (r FetchGlobalLastRenderedInfoResponse) StatusCode() int {
if r.HTTPResponse != nil {
return r.HTTPResponse.StatusCode
}
return 0
}
type QueryJobsResponse struct {
Body []byte
HTTPResponse *http.Response
@ -2765,6 +2832,15 @@ func (c *ClientWithResponses) SubmitJobWithResponse(ctx context.Context, body Su
return ParseSubmitJobResponse(rsp)
}
// FetchGlobalLastRenderedInfoWithResponse request returning *FetchGlobalLastRenderedInfoResponse
func (c *ClientWithResponses) FetchGlobalLastRenderedInfoWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*FetchGlobalLastRenderedInfoResponse, error) {
rsp, err := c.FetchGlobalLastRenderedInfo(ctx, reqEditors...)
if err != nil {
return nil, err
}
return ParseFetchGlobalLastRenderedInfoResponse(rsp)
}
// QueryJobsWithBodyWithResponse request with arbitrary body returning *QueryJobsResponse
func (c *ClientWithResponses) QueryJobsWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*QueryJobsResponse, error) {
rsp, err := c.QueryJobsWithBody(ctx, contentType, body, reqEditors...)
@ -3173,6 +3249,32 @@ func ParseSubmitJobResponse(rsp *http.Response) (*SubmitJobResponse, error) {
return response, nil
}
// ParseFetchGlobalLastRenderedInfoResponse parses an HTTP response from a FetchGlobalLastRenderedInfoWithResponse call
func ParseFetchGlobalLastRenderedInfoResponse(rsp *http.Response) (*FetchGlobalLastRenderedInfoResponse, error) {
bodyBytes, err := ioutil.ReadAll(rsp.Body)
defer func() { _ = rsp.Body.Close() }()
if err != nil {
return nil, err
}
response := &FetchGlobalLastRenderedInfoResponse{
Body: bodyBytes,
HTTPResponse: rsp,
}
switch {
case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200:
var dest JobLastRenderedImageInfo
if err := json.Unmarshal(bodyBytes, &dest); err != nil {
return nil, err
}
response.JSON200 = &dest
}
return response, nil
}
// ParseQueryJobsResponse parses an HTTP response from a QueryJobsWithResponse call
func ParseQueryJobsResponse(rsp *http.Response) (*QueryJobsResponse, error) {
bodyBytes, err := ioutil.ReadAll(rsp.Body)

View File

@ -19,6 +19,9 @@ type ServerInterface interface {
// Submit a new job for Flamenco Manager to execute.
// (POST /api/jobs)
SubmitJob(ctx echo.Context) error
// Get the URL that serves the last-rendered images.
// (GET /api/jobs/last-rendered)
FetchGlobalLastRenderedInfo(ctx echo.Context) error
// Fetch list of jobs.
// (POST /api/jobs/query)
QueryJobs(ctx echo.Context) error
@ -132,6 +135,15 @@ func (w *ServerInterfaceWrapper) SubmitJob(ctx echo.Context) error {
return err
}
// FetchGlobalLastRenderedInfo converts echo context to params.
func (w *ServerInterfaceWrapper) FetchGlobalLastRenderedInfo(ctx echo.Context) error {
var err error
// Invoke the callback with all the unmarshalled arguments
err = w.Handler.FetchGlobalLastRenderedInfo(ctx)
return err
}
// QueryJobs converts echo context to params.
func (w *ServerInterfaceWrapper) QueryJobs(ctx echo.Context) error {
var err error
@ -609,6 +621,7 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL
router.GET(baseURL+"/api/configuration", wrapper.GetConfiguration)
router.POST(baseURL+"/api/jobs", wrapper.SubmitJob)
router.GET(baseURL+"/api/jobs/last-rendered", wrapper.FetchGlobalLastRenderedInfo)
router.POST(baseURL+"/api/jobs/query", wrapper.QueryJobs)
router.GET(baseURL+"/api/jobs/type/:typeName", wrapper.GetJobType)
router.GET(baseURL+"/api/jobs/types", wrapper.GetJobTypes)

View File

@ -18,152 +18,153 @@ import (
// Base64 encoded, gzipped, json marshaled Swagger object
var swaggerSpec = []string{
"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",
"upWZ3Nx4Ds8g1++v/38AAAD//9NI25umqQAA",
"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",
"0o91qwAA",
}
// GetSwagger returns the content of the embedded swagger specification file

View File

@ -93,6 +93,8 @@ const (
const (
SocketIOSubscriptionTypeAllJobs SocketIOSubscriptionType = "allJobs"
SocketIOSubscriptionTypeAllLastRendered SocketIOSubscriptionType = "allLastRendered"
SocketIOSubscriptionTypeAllWorkers SocketIOSubscriptionType = "allWorkers"
SocketIOSubscriptionTypeJob SocketIOSubscriptionType = "job"

View File

@ -55,7 +55,7 @@ class ApiClient {
* @default {}
*/
this.defaultHeaders = {
'User-Agent': 'Flamenco/cca81558 / webbrowser'
'User-Agent': 'Flamenco/60f3f548 / webbrowser'
};
/**

View File

@ -47,6 +47,45 @@ export default class JobsApi {
/**
* Get the URL that serves the last-rendered images.
* @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/JobLastRenderedImageInfo} and HTTP response
*/
fetchGlobalLastRenderedInfoWithHttpInfo() {
let postBody = null;
let pathParams = {
};
let queryParams = {
};
let headerParams = {
};
let formParams = {
};
let authNames = [];
let contentTypes = [];
let accepts = ['application/json'];
let returnType = JobLastRenderedImageInfo;
return this.apiClient.callApi(
'/api/jobs/last-rendered', 'GET',
pathParams, queryParams, headerParams, formParams, postBody,
authNames, contentTypes, accepts, returnType, null
);
}
/**
* Get the URL that serves the last-rendered images.
* @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/JobLastRenderedImageInfo}
*/
fetchGlobalLastRenderedInfo() {
return this.fetchGlobalLastRenderedInfoWithHttpInfo()
.then(function(response_and_data) {
return response_and_data.data;
});
}
/**
* Fetch info about the job.
* @param {String} jobId

View File

@ -47,6 +47,13 @@ export default class SocketIOSubscriptionType {
"tasklog" = "tasklog";
/**
* value: "allLastRendered"
* @const
*/
"allLastRendered" = "allLastRendered";
/**
* Returns a <code>SocketIOSubscriptionType</code> enum value from a Javascript object name.