/* * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved * * Licensed under the Apache License, Version 2.0 (the License); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an AS IS BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ using System; using System.Runtime.InteropServices; namespace Tizen.WebView { /// /// Enumeration that provides an option to error codes. /// public enum LoadErrorCode { /// /// Unknown /// Unknown = 0, /// /// User canceled /// Canceled, /// /// Can't show page for this MIME Type. /// CantSupportMimetype, /// /// File IO error /// FailedFileIo, /// /// Cannot connect to network. /// CantConnect, /// /// Fail to look up host from DNS. /// CantLookupHost, /// /// Fail to SSL/TLS handshake. /// FailedTlsHandshake, /// /// Received certificate is invalid. /// InvalidCertificate, /// /// Connection timeout /// RequestTimeout, /// /// Too many redirects /// TooManyRedirects, /// /// Too many requests during this load /// TooManyRequests, /// /// Malformed url /// BadUrl, /// /// Unsupported scheme /// UnsupportedScheme, /// /// User authentication failed on server /// Authentication, /// /// Web server has internal server error. /// InternalServer, } /// /// Argument from the LoadError SmartCallback. /// public class SmartCallbackLoadErrorArgs : EventArgs { IntPtr _handle; internal SmartCallbackLoadErrorArgs(IntPtr handle) { _handle = handle; } /// /// Failing URL for the error. /// public string Url { get { return Interop.ChromiumEwk.ewk_error_url_get(_handle); } } /// /// The error code. /// public LoadErrorCode Code { get { return (LoadErrorCode)Interop.ChromiumEwk.ewk_error_code_get(_handle); } } /// /// The description for the error. /// public string Description { get { return Interop.ChromiumEwk.ewk_error_description_get(_handle); } } /// /// Whether the error should be treated as a cancellation. /// public bool Cancellation { get { return Interop.ChromiumEwk.ewk_error_cancellation_get(_handle); } } internal static SmartCallbackLoadErrorArgs CreateFromSmartEvent(IntPtr data, IntPtr obj, IntPtr info) { return new SmartCallbackLoadErrorArgs(info); } } }