# See the License for the specific language governing permissions and
# limitations under the License.
-# Curl services: `CurlHTTPRequest` and `CurlMail`
+# Data transfer with URL syntax
+#
+# Download or upload over HTTP with `CurlHTTPRequest` and send emails with `CurlMail`.
module curl
import native_curl
super NativeCurlCallbacks
var url: String
- var datas: nullable HeaderMap = null is writable
- var headers: nullable HeaderMap = null is writable
- var delegate: nullable CurlCallbacks = null is writable
+ var datas: nullable HeaderMap is writable
+ var headers: nullable HeaderMap is writable
+ var delegate: nullable CurlCallbacks is writable
# Set the user agent for all following HTTP requests
- var user_agent: nullable String = null is writable
+ var user_agent: nullable String is writable
# Execute HTTP request with settings configured through attribute
fun execute: CurlResponse
if not output_file_name == null then
opt_name = output_file_name
else if not self.url.substring(self.url.length-1, self.url.length) == "/" then
- opt_name = self.url.basename("")
+ opt_name = self.url.basename
else
return answer_failure(0, "Unable to extract file name, please specify one")
end
# Content header
var headers_body = new HeaderMap is lazy, writable
- private var supported_outgoing_protocol: Array[String] = ["smtp", "smtps"]
+ # Protocols supported to send mail to a server
+ #
+ # Default value at `["smtp", "smtps"]`
+ var supported_outgoing_protocol: Array[String] = ["smtp", "smtps"]
# Helper method to add pair values to mail content while building it (ex: "To:", "address@mail.com")
private fun add_pair_to_content(str: String, att: String, val: nullable String): String