本文整理汇总了Java中org.jivesoftware.smackx.xdata.packet.DataForm.getFields方法的典型用法代码示例。如果您正苦于以下问题:Java DataForm.getFields方法的具体用法?Java DataForm.getFields怎么用?Java DataForm.getFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.jivesoftware.smackx.xdata.packet.DataForm
的用法示例。
在下文中一共展示了DataForm.getFields方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: verifyPacketExtensions
import org.jivesoftware.smackx.xdata.packet.DataForm; //导入方法依赖的package包/类
/**
*
* @param info
* @return true if the stanza(/packet) extensions is ill-formed
*/
protected static boolean verifyPacketExtensions(DiscoverInfo info) {
List<FormField> foundFormTypes = new LinkedList<FormField>();
for (ExtensionElement pe : info.getExtensions()) {
if (pe.getNamespace().equals(DataForm.NAMESPACE)) {
DataForm df = (DataForm) pe;
for (FormField f : df.getFields()) {
if (f.getVariable().equals("FORM_TYPE")) {
for (FormField fft : foundFormTypes) {
if (f.equals(fft))
return true;
}
foundFormTypes.add(f);
}
}
}
}
return false;
}
示例2: getStreamMethodField
import org.jivesoftware.smackx.xdata.packet.DataForm; //导入方法依赖的package包/类
private FormField getStreamMethodField(DataForm form) {
for (FormField field : form.getFields()) {
if (field.getVariable().equals(STREAM_DATA_FIELD_NAME)) {
return field;
}
}
return null;
}
示例3: processStanza
import org.jivesoftware.smackx.xdata.packet.DataForm; //导入方法依赖的package包/类
@Override
public void processStanza(Stanza packet) {
LOGGER.info("response: "+packet);
mConn.removeSyncStanzaListener(this);
mConn.disconnect();
if (!(packet instanceof IQ)) {
LOGGER.warning("response not an IQ packet");
finish(null);
return;
}
IQ iq = (IQ) packet;
if (iq.getType() != IQ.Type.result) {
LOGGER.warning("ignoring response with IQ type: "+iq.getType());
this.finish(null);
return;
}
DataForm response = iq.getExtension(DataForm.ELEMENT, DataForm.NAMESPACE);
if (response == null) {
this.finish(null);
return;
}
String token = null;
List<FormField> fields = response.getFields();
for (FormField field : fields) {
if ("token".equals(field.getVariable())) {
token = field.getValues().get(0);
break;
}
}
this.finish(token);
}
示例4: processStanza
import org.jivesoftware.smackx.xdata.packet.DataForm; //导入方法依赖的package包/类
@Override
public void processStanza(Stanza packet) {
IQ iq = (IQ) packet;
if (iq.getType() == IQ.Type.result) {
DataForm response = iq.getExtension("x", "jabber:x:data");
if (response != null) {
String publicKey = null;
// ok! message will be sent
List<FormField> fields = response.getFields();
for (FormField field : fields) {
if ("publickey".equals(field.getVariable())) {
publicKey = field.getValues().get(0);
break;
}
}
if (!TextUtils.isEmpty(publicKey)) {
byte[] publicKeyData;
byte[] privateKeyData;
byte[] bridgeCertData;
try {
publicKeyData = Base64.decode(publicKey, Base64.DEFAULT);
privateKeyData = mKeyRing.secretKey.getEncoded();
bridgeCertData = X509Bridge.createCertificate(publicKeyData,
mKeyRing.secretKey.getSecretKey(), mPassphrase).getEncoded();
}
catch (Exception e) {
Log.e(MessageCenterService.TAG, "error decoding key data", e);
publicKeyData = null;
privateKeyData = null;
bridgeCertData = null;
}
if (publicKeyData != null && privateKeyData != null && bridgeCertData != null) {
// store key data in AccountManager
Authenticator.setDefaultPersonalKey(getContext(),
publicKeyData, privateKeyData, bridgeCertData,
mPassphrase);
// invalidate cached personal key
getApplication().invalidatePersonalKey();
unconfigure();
finish();
// restart message center
MessageCenterService.restart(getApplication());
}
// TODO else?
}
}
}
}
示例5: processPacket
import org.jivesoftware.smackx.xdata.packet.DataForm; //导入方法依赖的package包/类
@Override
public void processPacket(Packet packet) {
IQ iq = (IQ) packet;
if (iq.getType() == IQ.Type.RESULT) {
DataForm response = (DataForm) iq.getExtension("x", "jabber:x:data");
if (response != null) {
String publicKey = null;
// ok! message will be sent
List<FormField> fields = response.getFields();
for (FormField field : fields) {
if ("publickey".equals(field.getVariable())) {
publicKey = field.getValues().get(0);
break;
}
}
if (!TextUtils.isEmpty(publicKey)) {
byte[] publicKeyData;
byte[] privateKeyData;
byte[] bridgeCertData;
try {
publicKeyData = Base64.decode(publicKey, Base64.DEFAULT);
privateKeyData = mKeyRing.secretKey.getEncoded();
// TODO subjectAltName?
bridgeCertData = X509Bridge.createCertificate(publicKeyData,
mKeyRing.secretKey.getSecretKey(), mPassphrase, null).getEncoded();
}
catch (Exception e) {
Log.e(MessageCenterService.TAG, "error decoding key data", e);
publicKeyData = null;
privateKeyData = null;
bridgeCertData = null;
}
if (publicKeyData != null && privateKeyData != null && bridgeCertData != null) {
// store key data in AccountManager
Authenticator.setDefaultPersonalKey(getContext(),
publicKeyData, privateKeyData, bridgeCertData,
mPassphrase);
// invalidate cached personal key
getApplication().invalidatePersonalKey();
finish();
// restart message center
MessageCenterService.restart(getApplication());
}
// TODO else?
}
}
}
}