The IAP Control feature is an extension of the Java GCF implementation. Current implementation of the Java GCF does not let applications choose between the defined internet access points; rather it always offers the default one. IAP Control exposes access point selection for the application, therefore different applications may use different routes towards the desired network(s). This API therefore allows an application to use different access points for different network connections.
The IAP Control feature extends the Java GCF URI scheme definition by adding new optional parameters:
nokia_apnid
nokia_netid
The GCF provides the framework for creating a particular Connection
instance from a URL using Connector.open
(< URL >[,…]).
There are different protocol implementations in Java ME such as TCP, SSL,
UDP, HTTP, and HTTPS. Each protocol follows an URL schema when creating network
connection:
{scheme}:[{target}][{parms}]
where {scheme} is the name of a protocol such as http. The {target}
is
normally some kind of network address. Any {parms}
are
formed as a series of equates of the form ";x=y".
In order to provide this APN setting on the existing GCF API a new optional
parameter is introduced: nokia_apnid
which determines
the used IAP for the current connection. Another parameter has been introduced
in order to support the access point selection by network ID. The name of
this parameter is nokia_netid
and can be used only in
the case of TCP socket connections.
The parameter name is handled by the API in a case-sensitive way and this part of the URL must not contain any spaces or other special characters! In order not to interfere with other parameters in the URL, this part of the URL string is removed before it is transmitted to the webserver. The API can be used with each overloaded version of the open(…) function.
Note: You cannot use the two parameters at the same time.
If any of the parameters are defined, it is always at the end of the URI in the following format:
< protocol >://[< authority >]< path >[?[< query >];{nokia_apnid=< number > | nokia_netid=< number >}]
For example:
Connector.open("http://www.nokia.com:80;nokia_apnid=2")