diff --git a/api/src/com/cloud/user/UserContext.java b/api/src/com/cloud/user/UserContext.java index 0e276144b05..bcb33b5edeb 100644 --- a/api/src/com/cloud/user/UserContext.java +++ b/api/src/com/cloud/user/UserContext.java @@ -16,12 +16,10 @@ // under the License. package com.cloud.user; +import com.cloud.utils.component.ComponentContext; import javax.inject.Inject; - public class UserContext { - @Inject AccountService _accountMgr; - private static ThreadLocal s_currentContext = new ThreadLocal(); private long userId; @@ -30,9 +28,10 @@ public class UserContext { private long startEventId = 0; private long accountId; private String eventDetails; - private boolean apiServer; + @Inject private AccountService _accountMgr = null; + public UserContext() { } @@ -48,6 +47,9 @@ public class UserContext { } public User getCallerUser() { + if (_accountMgr == null) { + _accountMgr = ComponentContext.getComponent(AccountService.class); + } return _accountMgr.getActiveUser(userId); }