use of jetbrains.communicator.core.users.User in project intellij-plugins by JetBrains.
the class AsyncMessageDispatcherImpl method dispatchAllMessages.
private void dispatchAllMessages() {
User[] usersWithMessages = getUsersWithMessages();
for (int i = 0; i < usersWithMessages.length && isRunning(); i++) {
User user = usersWithMessages[i];
Message[] pendingMessages = getPendingMessages(user);
for (int j = 0; j < pendingMessages.length && isRunning(); j++) {
performDispatch(user, pendingMessages[j]);
}
}
save();
}
use of jetbrains.communicator.core.users.User in project intellij-plugins by JetBrains.
the class IDEAFacade method invokeSendMessage.
@Override
public void invokeSendMessage(User[] allUsers, User[] defaultTargetUsers, String message, SendMessageInvoker sendMessageInvoker) {
Project project = getProject(null);
assert project != null : "Null project when sending message";
IDEtalkMessagesWindow messagesWindow = project.getComponent(IDEtalkMessagesWindow.class);
if (messagesWindow != null && project.isInitialized()) {
messagesWindow.expandToolWindow();
for (User user : defaultTargetUsers) {
messagesWindow.showUserTabAndRequestFocus(user);
messagesWindow.appendInputText(user, message);
}
}
}
use of jetbrains.communicator.core.users.User in project intellij-plugins by JetBrains.
the class UserTreeRenderer method customizeCellRenderer.
public void customizeCellRenderer(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
TreeUtils.convertValueIfUserNode(value, new UserActionWithValue() {
public Object execute(User user) {
append(user.getDisplayName() + " ", SimpleTextAttributes.REGULAR_ATTRIBUTES);
append(user.getPresence().getDisplayText(), SimpleTextAttributes.GRAYED_ATTRIBUTES);
setIcon(user.getIcon());
customizeUserNode(user);
return null;
}
});
if (TreeUtils.getUserObject(value) instanceof String) {
// group
if (leaf) {
setIcon(IdetalkCoreIcons.Nodes.Group_close);
} else {
setIcon(IconLoader.getIcon(expanded ? "/nodes/group_open.png" : "/nodes/group_close.png"));
}
String group = value.toString();
append(group, getGroupAttributes(group));
}
}
use of jetbrains.communicator.core.users.User in project intellij-plugins by JetBrains.
the class MessageHistory method getHistory.
private synchronized Map<Date, DayHistory> getHistory() {
Map<Date, DayHistory> result = new HashMap<>();
for (User user : myHistory.keySet()) {
List<LocalMessage> messages = myHistory.get(user);
for (LocalMessage message : messages) {
DayHistory dayHistory = getDayHistoryFor(message, result);
dayHistory.addMessage(user, message);
}
}
return result;
}
use of jetbrains.communicator.core.users.User in project intellij-plugins by JetBrains.
the class FileAccessProvider method processAndFillResponse.
public final boolean processAndFillResponse(Element response, Element request, Transport transport, String remoteUser) {
User requestingUser = myUserModel.findUser(remoteUser, transport.getName());
if (requestingUser == null)
return false;
if (!requestingUser.canAccessMyFiles()) {
boolean allow = myIdeFacade.askQuestion(StringUtil.getMsg("FileAccessProvider.title"), StringUtil.getMsg("FileAccessProvider.message", requestingUser.getDisplayName()));
if (allow) {
requestingUser.setCanAccessMyFiles(true, myUserModel);
} else {
return false;
}
}
doProcess(request, response);
return true;
}
Aggregations