public API_Fiddler start() { install(); if (Fiddler_Process.notNull()) { "[API_Fiddler] in start, the Fiddler_Process is already mapped to a running process. Stopping request".error(); return this; } attach(); if (Fiddler_Process.isNull()) // means we were NOT able find a running instance and get its process object { if (Fiddler_Exe.fileExists().isFalse()) { "[API_Fiddler] Could not find Fiddler Exe file at location: {0}".error(Fiddler_Exe); return null; } Fiddler_Process = Processes.startProcess(Fiddler_Exe); } Fiddler_GuiAutomation = new API_GuiAutomation(Fiddler_Process); if (Fiddler_GuiAutomation.isNull()) { "[API_Fiddler] Could not set Fiddler_GuiAutomation".error(); return null; } Fiddler_Window = Fiddler_GuiAutomation.window(FIDDLER_MAIN_WINDOW_TITLE); if (Fiddler_Window.isNull()) { "[API_Fiddler] Could not get Fiddler main window with title: {0}".error(FIDDLER_MAIN_WINDOW_TITLE); return null; } return this; }