core.node / AcceptsFileUpload

# AcceptsFileUpload

`interface AcceptsFileUpload`

A service that implements AcceptsFileUpload can have new binary data provided to it via an HTTP upload.

TODO: In future, also accept uploads over the MQ interface too.

### Properties

acceptableFileExtensions | `abstract val acceptableFileExtensions: List<String>` What file extensions are acceptable for the file to be handed to upload()
dataTypePrefix | `abstract val dataTypePrefix: String` A string that prefixes the URLs, e.g. "attachments" or "interest-rates". Should be OK for URLs.

### Functions

upload | `abstract fun upload(data: InputStream): String` Accepts the data in the given input stream, and returns some sort of useful return message that will be sent back to the user in the response.

### Inheritors

NodeAttachmentService | `class NodeAttachmentService : AttachmentStorage, AcceptsFileUpload` Stores attachments in the specified local directory, which must exist. Doesnt allow new attachments to be uploaded.
Service | `class Service : AcceptsFileUpload, AbstractNodeService` The Service that wraps Oracle and handles messages/network interaction/request scrubbing.