JabAppendix B
From WikiContent
(Difference between revisions)
(content navi added) |
|||
| (2 intermediate revisions not shown.) | |||
| Line 1: | Line 1: | ||
| + | {{Content Programming Jabber}} | ||
=The IQRPC Classes for JabberRPCResponder= | =The IQRPC Classes for JabberRPCResponder= | ||
<br>This appendix contains the two | <br>This appendix contains the two | ||
| Line 13: | Line 14: | ||
<br> | <br> | ||
<code> | <code> | ||
| - | <br>// IQRPC.java | + | <br> // IQRPC.java |
| - | import org.jabber.jabberbeans.*; import | + | import org.jabber.jabberbeans.*; import |
| - | org.jabber.jabberbeans.Extension.*; | + | org.jabber.jabberbeans.Extension.*; |
| - | public class IQRPC extends XMLData implements QueryExtension { private | + | public class IQRPC extends XMLData implements QueryExtension { private |
| - | String payload; | + | String payload; |
public IQRPC(IQRPCBuilder builder) { payload=builder.getPayload(); | public IQRPC(IQRPCBuilder builder) { payload=builder.getPayload(); | ||
| Line 31: | Line 32: | ||
retval.append(payload); retval.append("</query>"); | retval.append(payload); retval.append("</query>"); | ||
} | } | ||
| - | } | + | } |
| - | } | + | } |
</code> | </code> | ||
<br> | <br> | ||
| Line 41: | Line 42: | ||
<br>// IQRPCBuilder.java | <br>// IQRPCBuilder.java | ||
| - | import org.jabber.jabberbeans.*; import | + | import org.jabber.jabberbeans.*; import |
| - | org.jabber.jabberbeans.Extension.*; | + | org.jabber.jabberbeans.Extension.*; |
| - | public class IQRPCBuilder implements ExtensionBuilder { private String | + | public class IQRPCBuilder implements ExtensionBuilder { private String |
| - | payload; | + | payload; |
public IQRPCBuilder() { reset(); | public IQRPCBuilder() { reset(); | ||
| Line 61: | Line 62: | ||
public Extension build() { return new IQRPC(this); | public Extension build() { return new IQRPC(this); | ||
} | } | ||
| - | } | + | } |
</code> | </code> | ||
Current revision
The IQRPC Classes for JabberRPCResponder
This appendix contains the two
IQRPC classes, IQRPC and IQRPCBuilder. They
are required for the Java JabberRPCResponder script in Section 10.2.
They're essentially modified copies of two existing and equivalent classes for the jabber:iq:time namespace, IQTime and IQTimeBuilder.
The IQRPC Class
// IQRPC.java
import org.jabber.jabberbeans.*; import org.jabber.jabberbeans.Extension.*;
public class IQRPC extends XMLData implements QueryExtension { private
String payload;
public IQRPC(IQRPCBuilder builder) { payload=builder.getPayload();
}
public String getPayload() { return payload;
}
public void appendItem(StringBuffer retval) {
retval.append("<query xmlns=\"jabber:iq:rpc\">");
retval.append(payload); retval.append("</query>");
}
}
}
The IQRPCBuilder Class
// IQRPCBuilder.java
import org.jabber.jabberbeans.*; import org.jabber.jabberbeans.Extension.*;
public class IQRPCBuilder implements ExtensionBuilder { private String
payload;
public IQRPCBuilder() { reset();
}
public void reset() { payload=null;
}
public String getPayload() { return payload;
}
public void setPayload(String value) { payload=value;
}
public Extension build() { return new IQRPC(this);
}
}
