Skip to content

Commit 26765be

Browse files
committed
Removing Microsoft IE driver implmentation
The Micorosft IE driver implementation has been abandoned in favor of the Edge driver implementation. It has received no updates in over two years, and will likely not be updated in the future. The open-source implementation is still supported and will continue to be used.
1 parent 0e12e8e commit 26765be

11 files changed

+2
-456
lines changed

cpp/iedriver/IEDriver.vcxproj

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,6 @@
243243
<ClCompile Include="IECommandHandler.cpp" />
244244
<ClCompile Include="IEServer.cpp" />
245245
<ClCompile Include="IESession.cpp" />
246-
<ClCompile Include="IEWebDriverManagerCommandExecutor.cpp" />
247246
<ClCompile Include="InputManager.cpp" />
248247
<ClCompile Include="InteractionsManager.cpp" />
249248
<ClCompile Include="ProxyManager.cpp" />
@@ -346,7 +345,6 @@
346345
<ClInclude Include="IECommandHandler.h" />
347346
<ClInclude Include="IEServer.h" />
348347
<ClInclude Include="IESession.h" />
349-
<ClInclude Include="IEWebDriverManagerCommandExecutor.h" />
350348
<ClInclude Include="InputManager.h" />
351349
<ClInclude Include="InteractionsManager.h" />
352350
<ClInclude Include="LocationInfo.h" />

cpp/iedriver/IEDriver.vcxproj.filters

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,6 @@
7474
<ClCompile Include="IESession.cpp">
7575
<Filter>Source Files</Filter>
7676
</ClCompile>
77-
<ClCompile Include="IEWebDriverManagerCommandExecutor.cpp">
78-
<Filter>Source Files</Filter>
79-
</ClCompile>
8077
<ClCompile Include="InputManager.cpp">
8178
<Filter>Source Files</Filter>
8279
</ClCompile>
@@ -352,9 +349,6 @@
352349
<ClInclude Include="IESession.h">
353350
<Filter>Header Files</Filter>
354351
</ClInclude>
355-
<ClInclude Include="IEWebDriverManagerCommandExecutor.h">
356-
<Filter>Header Files</Filter>
357-
</ClInclude>
358352
<ClInclude Include="InputManager.h">
359353
<Filter>Header Files</Filter>
360354
</ClInclude>

cpp/iedriver/IEServer.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,10 @@ IEServer::IEServer(int port,
2828
const std::string& log_level,
2929
const std::string& log_file,
3030
const std::string& version,
31-
const std::string& driver_implementation,
3231
const std::string& acl) : Server(port, host, log_level, log_file, acl) {
3332
LOG(TRACE) << "Entering IEServer::IEServer";
3433
LOG(INFO) << "Driver version: " << version;
3534
this->version_ = version;
36-
this->driver_implementation_ = driver_implementation;
3735
}
3836

3937
IEServer::~IEServer(void) {
@@ -44,7 +42,6 @@ SessionHandle IEServer::InitializeSession() {
4442
SessionHandle session_handle(new IESession());
4543
SessionParameters params;
4644
params.port = this->port();
47-
params.implementation = IESession::ConvertDriverEngine(this->driver_implementation_);
4845
session_handle->Initialize(reinterpret_cast<void*>(&params));
4946
return session_handle;
5047
}

cpp/iedriver/IEServer.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ class IEServer : public Server {
3030
const std::string& log_level,
3131
const std::string& log_file,
3232
const std::string& version,
33-
const std::string& driver_implementation,
3433
const std::string& acl);
3534
virtual ~IEServer(void);
3635

@@ -40,7 +39,6 @@ class IEServer : public Server {
4039
virtual void ShutDown(void);
4140
private:
4241
std::string version_;
43-
std::string driver_implementation_;
4442
};
4543

4644
} // namespace webdriver

cpp/iedriver/IESession.cpp

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
#include "BrowserFactory.h"
2222
#include "CommandExecutor.h"
2323
#include "IECommandExecutor.h"
24-
#include "IEWebDriverManagerCommandExecutor.h"
2524
#include "messages.h"
2625
#include "StringUtilities.h"
2726

@@ -62,7 +61,6 @@ void IESession::Initialize(void* init_params) {
6261

6362
SessionParameters* params = reinterpret_cast<SessionParameters*>(init_params);
6463
int port = params->port;
65-
this->driver_implementation_ = params->implementation;
6664

6765
IECommandExecutorThreadContext thread_context;
6866
thread_context.port = port;
@@ -76,28 +74,6 @@ void IESession::Initialize(void* init_params) {
7674
}
7775

7876
ThreadProcedure thread_proc = &IECommandExecutor::ThreadProc;
79-
if (this->driver_implementation_ != LegacyImplementation) {
80-
BrowserFactory factory;
81-
int browser_version = factory.browser_version();
82-
bool is_component_registered = IEWebDriverManagerCommandExecutor::IsComponentRegistered();
83-
if (this->driver_implementation_ == VendorImplementation) {
84-
LOG(DEBUG) << "Attempting to use vendor-provided driver implementation per user request";
85-
thread_proc = &IEWebDriverManagerCommandExecutor::ThreadProc;
86-
} else if (this->driver_implementation_ == AutoDetectImplementation &&
87-
browser_version >= 11 &&
88-
is_component_registered) {
89-
LOG(DEBUG) << "Using vendor-provided driver implementation per autodetection";
90-
thread_proc = &IEWebDriverManagerCommandExecutor::ThreadProc;
91-
} else {
92-
LOG(DEBUG) << "Falling back to legacy driver implementation per autodetection ("
93-
<< "detected IE version: " << browser_version
94-
<< ", vendor driver install is "
95-
<< (is_component_registered ? "" : "not")
96-
<< " registered).";
97-
}
98-
} else {
99-
LOG(DEBUG) << "Using legacy driver implementation per user request";
100-
}
10177
HANDLE thread_handle = reinterpret_cast<HANDLE>(_beginthreadex(NULL,
10278
0,
10379
thread_proc,
@@ -258,14 +234,4 @@ bool IESession::ExecuteCommand(const std::string& serialized_command,
258234
return session_is_valid;
259235
}
260236

261-
DriverImplementation IESession::ConvertDriverEngine(const std::string& engine) {
262-
if (engine == "VENDOR") {
263-
return VendorImplementation;
264-
}
265-
if (engine == "AUTODETECT") {
266-
return AutoDetectImplementation;
267-
}
268-
return LegacyImplementation;
269-
}
270-
271237
} // namespace webdriver

cpp/iedriver/IESession.h

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,33 +27,23 @@
2727

2828
namespace webdriver {
2929

30-
enum DriverImplementation {
31-
LegacyImplementation = 0,
32-
AutoDetectImplementation,
33-
VendorImplementation
34-
};
35-
3630
// Structure to be used for storing session initialization parameters
3731
struct SessionParameters {
3832
int port;
39-
DriverImplementation implementation;
4033
};
4134

4235
class IESession : public Session {
4336
public:
4437
IESession();
4538
virtual ~IESession(void);
4639

47-
static DriverImplementation ConvertDriverEngine(const std::string& engine);
48-
4940
void Initialize(void* init_params);
5041
void ShutDown(void);
5142
bool ExecuteCommand(const std::string& serialized_command,
5243
std::string* serialized_response);
5344

5445
private:
5546
bool WaitForCommandExecutorExit(int timeout_in_milliseconds);
56-
DriverImplementation driver_implementation_;
5747
HWND executor_window_handle_;
5848
};
5949

0 commit comments

Comments
 (0)