private ChromeSession addSession(ChromeSessionInfo info) { var session = new ChromeSession(info, this); aliveSessions.Add(session.Id, session); return(session); }
internal static DynamicObjectResult Get(EvaluateCommandResponse result, ChromeSession session) { if (result.ExceptionDetails != null) { throw new ChromeRemoteException(result.ExceptionDetails); } return(Get(result.Result, session)); }
internal static DynamicObjectResult Get(RemoteObject value, ChromeSession session) { if (value.Type == "undefined") { return(null); } return(new DynamicObjectResult(value.ObjectId, session)); }
/// <summary> /// Closes the provided Session(Tab) /// </summary> /// <param name="session">Session to be closed</param> /// <returns></returns> public async Task CloseSession(ChromeSession session) { //TODO(Tera):if i close all the sessions, chrome closes itself! i can use this to gracefully close this stuff, OR maybe i should prevent it? using (var webClient = GetDebuggerClient()) { var result = await webClient.PostAsync("/json/close/" + session.Id, null); var contents = await result.Content.ReadAsStringAsync(); //Assert contents == "Target is closing" if (aliveSessions.ContainsKey(session.Id)) { aliveSessions.Remove(session.Id); } session.innerDispose(); } }
public DynamicObjectResult(string objectId, ChromeSession session) { this.objectId = objectId; this.session = session; }