当前位置: 首页>>代码示例>>Java>>正文


Java MucOptions类代码示例

本文整理汇总了Java中eu.siacs.conversations.entities.MucOptions的典型用法代码示例。如果您正苦于以下问题:Java MucOptions类的具体用法?Java MucOptions怎么用?Java MucOptions使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MucOptions类属于eu.siacs.conversations.entities包,在下文中一共展示了MucOptions类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: parseConferencePresence

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public void parseConferencePresence(PresencePacket packet, Account account) {
	final Conversation conversation = packet.getFrom() == null ? null : mXmppConnectionService.find(account, packet.getFrom().toBareJid());
	if (conversation != null) {
		final MucOptions mucOptions = conversation.getMucOptions();
		boolean before = mucOptions.online();
		int count = mucOptions.getUserCount();
		final List<MucOptions.User> tileUserBefore = mucOptions.getUsers(5);
		processConferencePresence(packet, mucOptions);
		final List<MucOptions.User> tileUserAfter = mucOptions.getUsers(5);
		if (!tileUserAfter.equals(tileUserBefore)) {
			mXmppConnectionService.getAvatarService().clear(mucOptions);
		}
		if (before != mucOptions.online() || (mucOptions.online() && count != mucOptions.getUserCount())) {
			mXmppConnectionService.updateConversationUi();
		} else if (mucOptions.online()) {
			mXmppConnectionService.updateMucRosterUi();
		}
	}
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:20,代码来源:PresenceParser.java

示例2: getImpl

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
private Bitmap getImpl(final MucOptions.User user, final int size, boolean cachedOnly) {
	final String KEY = key(user, size);
	Bitmap avatar = this.mXmppConnectionService.getBitmapCache().get(KEY);
	if (avatar != null || cachedOnly) {
		return avatar;
	}
	if (user.getAvatar() != null) {
		avatar = mXmppConnectionService.getFileBackend().getAvatar(user.getAvatar(), size);
	}
	if (avatar == null) {
		Contact contact = user.getContact();
		if (contact != null) {
			avatar = get(contact, size, cachedOnly);
		} else {
			avatar = get(user.getName(), size, cachedOnly);
		}
	}
	this.mXmppConnectionService.getBitmapCache().put(KEY, avatar);
	return avatar;
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:21,代码来源:AvatarService.java

示例3: get

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public Bitmap get(Message message, int size, boolean cachedOnly) {
	final Conversation conversation = message.getConversation();
	if (message.getStatus() == Message.STATUS_RECEIVED) {
		Contact c = message.getContact();
		if (c != null && (c.getProfilePhoto() != null || c.getAvatar() != null)) {
			return get(c, size, cachedOnly);
		} else if (message.getConversation().getMode() == Conversation.MODE_MULTI){
			MucOptions.User user = conversation.getMucOptions().findUser(message.getCounterpart().getResourcepart());
			if (user != null) {
				return getImpl(user,size,cachedOnly);
			}
		}
		return get(UIHelper.getMessageDisplayName(message), size, cachedOnly);
	} else  {
		return get(conversation.getAccount(), size, cachedOnly);
	}
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:18,代码来源:AvatarService.java

示例4: removeFromRoom

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
private void removeFromRoom(final User user) {
	if (mConversation.getMucOptions().membersOnly()) {
		xmppConnectionService.changeAffiliationInConference(mConversation,user.getJid(), MucOptions.Affiliation.NONE,this);
		xmppConnectionService.changeRoleInConference(mConversation,mSelectedUser.getName(), MucOptions.Role.NONE,ConferenceDetailsActivity.this);
	} else {
		AlertDialog.Builder builder = new AlertDialog.Builder(this);
		builder.setTitle(R.string.ban_from_conference);
		builder.setMessage(getString(R.string.removing_from_public_conference,user.getName()));
		builder.setNegativeButton(R.string.cancel,null);
		builder.setPositiveButton(R.string.ban_now,new DialogInterface.OnClickListener() {
			@Override
			public void onClick(DialogInterface dialog, int which) {
				xmppConnectionService.changeAffiliationInConference(mConversation,user.getJid(), MucOptions.Affiliation.OUTCAST,ConferenceDetailsActivity.this);
				xmppConnectionService.changeRoleInConference(mConversation,mSelectedUser.getName(), MucOptions.Role.NONE,ConferenceDetailsActivity.this);
			}
		});
		builder.create().show();
	}
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:20,代码来源:ConferenceDetailsActivity.java

示例5: inviteToConversation

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
protected void inviteToConversation(Conversation conversation) {
	Intent intent = new Intent(getApplicationContext(),
			ChooseContactActivity.class);
	List<String> contacts = new ArrayList<>();
	if (conversation.getMode() == Conversation.MODE_MULTI) {
		for (MucOptions.User user : conversation.getMucOptions().getUsers()) {
			Jid jid = user.getJid();
			if (jid != null) {
				contacts.add(jid.toBareJid().toString());
			}
		}
	} else {
		contacts.add(conversation.getJid().toBareJid().toString());
	}
	intent.putExtra("filter_contacts", contacts.toArray(new String[contacts.size()]));
	intent.putExtra("conversation", conversation.getUuid());
	intent.putExtra("multiple", true);
	intent.putExtra("show_enter_jid", true);
	intent.putExtra("account", conversation.getAccount().getJid().toBareJid().toString());
	startActivityForResult(intent, REQUEST_INVITE_TO_CONVERSATION);
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:22,代码来源:XmppActivity.java

示例6: parseItem

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public static MucOptions.User parseItem(Conversation conference, Element item, Jid fullJid) {
	final String local = conference.getJid().getLocalpart();
	final String domain = conference.getJid().getDomainpart();
	String affiliation = item.getAttribute("affiliation");
	String role = item.getAttribute("role");
	String nick = item.getAttribute("nick");
	if (nick != null && fullJid == null) {
		try {
			fullJid = Jid.fromParts(local, domain, nick);
		} catch (InvalidJidException e) {
			fullJid = null;
		}
	}
	Jid realJid = item.getAttributeAsJid("jid");
	MucOptions.User user = new MucOptions.User(conference.getMucOptions(), fullJid);
	user.setRealJid(realJid);
	user.setAffiliation(affiliation);
	user.setRole(role);
	return user;
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:21,代码来源:AbstractParser.java

示例7: parseConferencePresence

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public void parseConferencePresence(PresencePacket packet, Account account) {
	final Conversation conversation = packet.getFrom() == null ? null : mXmppConnectionService.find(account, packet.getFrom().toBareJid());
	if (conversation != null) {
		final MucOptions mucOptions = conversation.getMucOptions();
		boolean before = mucOptions.online();
		int count = mucOptions.getUserCount();
		final List<MucOptions.User> tileUserBefore = mucOptions.getUsers(5);
		processConferencePresence(packet, conversation);
		final List<MucOptions.User> tileUserAfter = mucOptions.getUsers(5);
		if (!tileUserAfter.equals(tileUserBefore)) {
			mXmppConnectionService.getAvatarService().clear(mucOptions);
		}
		if (before != mucOptions.online() || (mucOptions.online() && count != mucOptions.getUserCount())) {
			mXmppConnectionService.updateConversationUi();
		} else if (mucOptions.online()) {
			mXmppConnectionService.updateMucRosterUi();
		}
	}
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:20,代码来源:PresenceParser.java

示例8: getDisplayName

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public static String getDisplayName(MucOptions.User user) {
	Contact contact = user.getContact();
	if (contact != null) {
		return contact.getDisplayName();
	} else {
		final String name = user.getName();
		if (name != null) {
			return name;
		}
		final Jid realJid = user.getRealJid();
		if (realJid != null) {
			return JidHelper.localPartOrFallback(realJid);
		}
		return null;
	}
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:17,代码来源:UIHelper.java

示例9: changeAffiliationInConference

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public void changeAffiliationInConference(final Conversation conference, Jid user, final MucOptions.Affiliation affiliation, final OnAffiliationChanged callback) {
	final Jid jid = user.toBareJid();
	IqPacket request = this.mIqGenerator.changeAffiliation(conference, jid, affiliation.toString());
	sendIqPacket(conference.getAccount(), request, new OnIqPacketReceived() {
		@Override
		public void onIqPacketReceived(Account account, IqPacket packet) {
			if (packet.getType() == IqPacket.TYPE.RESULT) {
				conference.getMucOptions().changeAffiliation(jid, affiliation);
				getAvatarService().clear(conference);
				callback.onAffiliationChangedSuccessful(jid);
			} else {
				callback.onAffiliationChangeFailed(jid, R.string.could_not_change_affiliation);
			}
		}
	});
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:17,代码来源:XmppConnectionService.java

示例10: getImpl

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
private Bitmap getImpl(final MucOptions.User user, final int size, boolean cachedOnly) {
	final String KEY = key(user, size);
	Bitmap avatar = this.mXmppConnectionService.getBitmapCache().get(KEY);
	if (avatar != null || cachedOnly) {
		return avatar;
	}
	if (user.getAvatar() != null) {
		avatar = mXmppConnectionService.getFileBackend().getAvatar(user.getAvatar(), size);
	}
	if (avatar == null) {
		Contact contact = user.getContact();
		if (contact != null) {
			avatar = get(contact, size, cachedOnly);
		} else {
			String seed = user.getRealJid() != null ? user.getRealJid().toBareJid().toString() : null;
			avatar = get(user.getName(), seed, size, cachedOnly);
		}
	}
	this.mXmppConnectionService.getBitmapCache().put(KEY, avatar);
	return avatar;
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:22,代码来源:AvatarService.java

示例11: get

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
private Bitmap get(MucOptions mucOptions, int size,  boolean cachedOnly) {
	final String KEY = key(mucOptions, size);
	Bitmap bitmap = this.mXmppConnectionService.getBitmapCache().get(KEY);
	if (bitmap != null || cachedOnly) {
		return bitmap;
	}
	final List<MucOptions.User> users = mucOptions.getUsersRelevantForNameAndAvatar();
	if (users.size() == 0) {
		Conversation c = mucOptions.getConversation();
		bitmap = getImpl(c.getName(),c.getJid().toBareJid().toString(),size);
	} else {
		bitmap = getImpl(users,size);
	}
	this.mXmppConnectionService.getBitmapCache().put(KEY, bitmap);
	return bitmap;
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:17,代码来源:AvatarService.java

示例12: removeFromRoom

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
private void removeFromRoom(final User user) {
	if (mConversation.getMucOptions().membersOnly()) {
		xmppConnectionService.changeAffiliationInConference(mConversation,user.getRealJid(), MucOptions.Affiliation.NONE,this);
		if (user.getRole() != MucOptions.Role.NONE) {
			xmppConnectionService.changeRoleInConference(mConversation, mSelectedUser.getName(), MucOptions.Role.NONE, ConferenceDetailsActivity.this);
		}
	} else {
		AlertDialog.Builder builder = new AlertDialog.Builder(this);
		builder.setTitle(R.string.ban_from_conference);
		builder.setMessage(getString(R.string.removing_from_public_conference,user.getName()));
		builder.setNegativeButton(R.string.cancel,null);
		builder.setPositiveButton(R.string.ban_now,new DialogInterface.OnClickListener() {
			@Override
			public void onClick(DialogInterface dialog, int which) {
				xmppConnectionService.changeAffiliationInConference(mConversation,user.getRealJid(), MucOptions.Affiliation.OUTCAST,ConferenceDetailsActivity.this);
				if (user.getRole() != MucOptions.Role.NONE) {
					xmppConnectionService.changeRoleInConference(mConversation, mSelectedUser.getName(), MucOptions.Role.NONE, ConferenceDetailsActivity.this);
				}
			}
		});
		builder.create().show();
	}
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:24,代码来源:ConferenceDetailsActivity.java

示例13: inviteToConversation

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
protected void inviteToConversation(Conversation conversation) {
	Intent intent = new Intent(getApplicationContext(),
			ChooseContactActivity.class);
	List<String> contacts = new ArrayList<>();
	if (conversation.getMode() == Conversation.MODE_MULTI) {
		for (MucOptions.User user : conversation.getMucOptions().getUsers(false)) {
			Jid jid = user.getRealJid();
			if (jid != null) {
				contacts.add(jid.toBareJid().toString());
			}
		}
	} else {
		contacts.add(conversation.getJid().toBareJid().toString());
	}
	intent.putExtra("filter_contacts", contacts.toArray(new String[contacts.size()]));
	intent.putExtra("conversation", conversation.getUuid());
	intent.putExtra("multiple", true);
	intent.putExtra("show_enter_jid", true);
	intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().toBareJid().toString());
	startActivityForResult(intent, REQUEST_INVITE_TO_CONVERSATION);
}
 
开发者ID:siacs,项目名称:Conversations,代码行数:22,代码来源:XmppActivity.java

示例14: parseConferencePresence

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
public void parseConferencePresence(PresencePacket packet, Account account) {
	PgpEngine mPgpEngine = mXmppConnectionService.getPgpEngine();
	final Conversation conversation = packet.getFrom() == null ? null : mXmppConnectionService.find(account, packet.getFrom().toBareJid());
	if (conversation != null) {
		final MucOptions mucOptions = conversation.getMucOptions();
		boolean before = mucOptions.online();
		int count = mucOptions.getUsers().size();
		mucOptions.processPacket(packet, mPgpEngine);
		mXmppConnectionService.getAvatarService().clear(conversation);
		if (before != mucOptions.online() || (mucOptions.online() && count != mucOptions.getUsers().size())) {
			mXmppConnectionService.updateConversationUi();
		} else if (mucOptions.online()) {
			mXmppConnectionService.updateMucRosterUi();
		}
	}
}
 
开发者ID:juanignaciomolina,项目名称:txtr,代码行数:17,代码来源:PresenceParser.java

示例15: drawTile

import eu.siacs.conversations.entities.MucOptions; //导入依赖的package包/类
private void drawTile(Canvas canvas, MucOptions.User user, int left,
					  int top, int right, int bottom) {
	Contact contact = user.getContact();
	if (contact != null) {
		Uri uri = null;
		if (contact.getProfilePhoto() != null) {
			uri = Uri.parse(contact.getProfilePhoto());
		} else if (contact.getAvatar() != null) {
			uri = mXmppConnectionService.getFileBackend().getAvatarUri(
					contact.getAvatar());
		}
		if (uri != null) {
			Bitmap bitmap = mXmppConnectionService.getFileBackend()
					.cropCenter(uri, bottom - top, right - left);
			if (bitmap != null) {
				drawTile(canvas, bitmap, left, top, right, bottom);
				return;
			}
		}
	}
	String name = contact != null ? contact.getDisplayName() : user.getName();
	final String letter = name.isEmpty() ? "X" : name.substring(0,1);
	final int color = UIHelper.getColorForName(name);
	drawTile(canvas, letter, color, left, top, right, bottom);
}
 
开发者ID:juanignaciomolina,项目名称:txtr,代码行数:26,代码来源:AvatarService.java


注:本文中的eu.siacs.conversations.entities.MucOptions类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。