109 lines
4.3 KiB
Python
109 lines
4.3 KiB
Python
# Copyright (c) Microsoft Corporation.
|
|
#
|
|
# 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.
|
|
|
|
from typing import Dict, cast
|
|
|
|
from playwright._impl._artifact import Artifact
|
|
from playwright._impl._browser import Browser
|
|
from playwright._impl._browser_context import BrowserContext
|
|
from playwright._impl._browser_type import BrowserType
|
|
from playwright._impl._cdp_session import CDPSession
|
|
from playwright._impl._connection import ChannelOwner
|
|
from playwright._impl._debugger import Debugger
|
|
from playwright._impl._dialog import Dialog
|
|
from playwright._impl._disposable import Disposable
|
|
from playwright._impl._element_handle import ElementHandle
|
|
from playwright._impl._fetch import APIRequestContext
|
|
from playwright._impl._frame import Frame
|
|
from playwright._impl._js_handle import JSHandle
|
|
from playwright._impl._local_utils import LocalUtils
|
|
from playwright._impl._network import (
|
|
Request,
|
|
Response,
|
|
Route,
|
|
WebSocket,
|
|
WebSocketRoute,
|
|
)
|
|
from playwright._impl._page import BindingCall, Page, Worker
|
|
from playwright._impl._playwright import Playwright
|
|
from playwright._impl._stream import Stream
|
|
from playwright._impl._tracing import Tracing
|
|
from playwright._impl._writable_stream import WritableStream
|
|
|
|
|
|
class DummyObject(ChannelOwner):
|
|
def __init__(
|
|
self, parent: ChannelOwner, type: str, guid: str, initializer: Dict
|
|
) -> None:
|
|
super().__init__(parent, type, guid, initializer)
|
|
|
|
|
|
def create_remote_object(
|
|
parent: ChannelOwner, type: str, guid: str, initializer: Dict
|
|
) -> ChannelOwner:
|
|
if type == "Artifact":
|
|
return Artifact(parent, type, guid, initializer)
|
|
if type == "APIRequestContext":
|
|
return APIRequestContext(parent, type, guid, initializer)
|
|
if type == "BindingCall":
|
|
return BindingCall(parent, type, guid, initializer)
|
|
if type == "Browser":
|
|
return Browser(cast(BrowserType, parent), type, guid, initializer)
|
|
if type == "BrowserType":
|
|
return BrowserType(parent, type, guid, initializer)
|
|
if type == "BrowserContext":
|
|
return BrowserContext(parent, type, guid, initializer)
|
|
if type == "CDPSession":
|
|
return CDPSession(parent, type, guid, initializer)
|
|
if type == "Debugger":
|
|
return Debugger(parent, type, guid, initializer)
|
|
if type == "Dialog":
|
|
return Dialog(parent, type, guid, initializer)
|
|
if type == "Disposable":
|
|
return Disposable(parent, type, guid, initializer)
|
|
if type == "ElementHandle":
|
|
return ElementHandle(parent, type, guid, initializer)
|
|
if type == "Frame":
|
|
return Frame(parent, type, guid, initializer)
|
|
if type == "JSHandle":
|
|
return JSHandle(parent, type, guid, initializer)
|
|
if type == "LocalUtils":
|
|
local_utils = LocalUtils(parent, type, guid, initializer)
|
|
if not local_utils._connection._local_utils:
|
|
local_utils._connection._local_utils = local_utils
|
|
return local_utils
|
|
if type == "Page":
|
|
return Page(parent, type, guid, initializer)
|
|
if type == "Playwright":
|
|
return Playwright(parent, type, guid, initializer)
|
|
if type == "Request":
|
|
return Request(parent, type, guid, initializer)
|
|
if type == "Response":
|
|
return Response(parent, type, guid, initializer)
|
|
if type == "Route":
|
|
return Route(parent, type, guid, initializer)
|
|
if type == "Stream":
|
|
return Stream(parent, type, guid, initializer)
|
|
if type == "Tracing":
|
|
return Tracing(parent, type, guid, initializer)
|
|
if type == "WebSocket":
|
|
return WebSocket(parent, type, guid, initializer)
|
|
if type == "WebSocketRoute":
|
|
return WebSocketRoute(parent, type, guid, initializer)
|
|
if type == "Worker":
|
|
return Worker(parent, type, guid, initializer)
|
|
if type == "WritableStream":
|
|
return WritableStream(parent, type, guid, initializer)
|
|
return DummyObject(parent, type, guid, initializer)
|