Merge branch 'jm/feature-metadata-endpoint' of https://github.com/Voxel8/OctoPrint into pr/jminardi/feature-metadata-endpoint

This commit is contained in:
Gina Häußge 2015-04-16 15:39:35 +02:00
commit 694a8febb5
2 changed files with 10 additions and 0 deletions

View file

@ -219,6 +219,9 @@ Upload file
to ``false``.
:form print: Whether to start printing the file directly after upload (``true``) or not (``false``). If set, `select`
is implicitely ``true`` as well. Optional, defaults to ``false``.
:form userdata: [Optional] An optional string that if specified will be saved along with the file as metadata.
:form userjson: [Optional] An optional string that if specified will be intepreted as json and then saved along with
the file as metadata.
:statuscode 201: No error
:statuscode 400: If no `file` is included in the request, or the request is otherwise invalid.
:statuscode 404: If `location` is neither ``local`` nor ``sdcard`` or trying to upload to SD card and SD card support

View file

@ -214,6 +214,13 @@ def uploadGcodeFile(target):
filename = fileProcessingFinished(added_file, fileManager.path_on_disk(FileDestinations.LOCAL, added_file), target)
done = True
# Store any additional user data the caller may have passed.
if 'userjson' in request.values:
import json
fileManager.set_additional_metadata(FileDestinations.LOCAL, added_file, 'userjson', json.loads(request.values['userjson']))
if 'userdata' in request.values:
fileManager.set_additional_metadata(FileDestinations.LOCAL, added_file, 'userdata', request.values['userdata'])
sdFilename = None
if isinstance(filename, tuple):
filename, sdFilename = filename