METHODS AND APPARATUS FOR ESTABLISHING AND MAINTAINING INERNET DOMAIN NAME REGISTRATIONS

Abstract: Methods and apparatus for conducting transactions associated with managing Internet domain names includes establishing a connection between application programs of other users and a registrar of Internet domain names over the Internet, authenticating the right of the user to so request fulfillment of a transaction, establishing a secure socket layer within the connection and processing commands after such authentication.

Description: METHODS AND APPARATUS FOR ESTABLISHING AND MAINTAINING INTERNET DOMAIN NAME REGISTRATIONS RELATED APPLICATION This application claims the benefit of U.S. Provisional Application No. 60/153,960, filed September 15, 1999, the disclosure of which is expressly incoφorated herein by reference. Copending U.S. Patent Application Serial No. 09/544,305, filed April 6, 2000, is also expressly incoφorated herein by reference. FIELD OF THE INVENTION The present invention relates to the field of domain name registration. More particularly, the invention relates to methods and apparatus, which provides an application program interface to enable the registration and maintenance of Internet domain names. BACKGROUND OF THE INVENTION The explosive growth of the Internet has created the need for orderly management of the process for creating domain name registrations (also known as Web addresses) and subsequent administrative activities such as changes in ownership, renewals, and so forth. Until recently, Network Solutions, Inc. of Herndon, Virginia was the exclusive entity through which domain name registrations ("DNRs") were acquired and registered, at least for domain names ending in .com, .net, .org and .edu. In such role, Network Solutions, Inc. is known as a Registrar. Approximately five million Web addresses have been registered by Network Solutions, Inc. so far. Presently-implemented systems for registration of Web Addresses rely almost exclusively on the use of e-mails between users and the Registrar for each step of the process. For example, FIG. 4 shows the sequence of steps for registration, a customer (Registrant) prepares to register new Web Address 100; The Registrant fills out a Service Agreement (102). The Service Agreement is submitted by e-mail to the Registrant, for example, to hostmaster@internic.net (step 104). The Request is automatically assigned a tracking number 106. The Service Agreement is automatically checked for errors 108. The Service Agreement is processed if there are no errors and the registrant is notified via e-mail when completed 112. Web Address registration is complete with a message. For example, the message may read: "Your Web Address registration is complete" (step 114). The customer is invoiced for the Web Address registration, step 116, and pays for the registration (step 118). Finally, the Registrar sends a re-registration notice to registrant 60 days before the two year anniversary of the initial registration (step 120). Should there be an error in the Service Agreement, the registration process is not completed and an e-mail is sent to the customer informing it of the problem (step 110). While this process works effectively, it is not without certain shortcomings. Most notably, the use of the Internet for e-mailing notices is not generally on a "real-time" basis. It may sometimes take several days for an e-mail to be delivered, particularly to parts of the world where the Internet support structure is not fully established. In addition, e-mails may become corrupted which creates further delays since the recipient must ask for the messages to be resent. Further, recent events have resulted in the development of a concept termed "Wholesaling" by which other organizations, such as Internet Services Providers ("ISP"), Internet hosting providers, Internet portals and Electronic Commerce Providers are allowed to secure such DNRs on behalf of their own customers. In effect, such organizations act as their own Registrars by offering their customers an interface which permits unsophisticated and sophisticated users to interface with the registration process and subsequent management thereof. Ultimately, however, DNRs are still issued by the Registrar, Network Solutions, Inc. This expansion in the number of outlets for securing DNRs has led to the development of systems and methods to facilitate wholesaling. Network Solutions, Inc. provides the NSl Wholesale Service Protocol ("WSP"), which establishes support of a real-time programmable interface for the purchase and management of Network Solutions, Inc. ("NSl") products and services a system. This system would permit users seeking registrations to complete the process, regardless of their level of expertise in computer technology in general, and the Internet in particular. The WSP uses a simple, connection-based, synchronized, ASCII text-based protocol to communicate with an NSl Wholesale System over the Internet, thereby allowing Wholesalers to securely and reliably create, modify, and delete customer accounts and various products including the registration and management of Internet domain names. The WSP consists of a set of commands that a Wholesaler may issue to create customers or domain-name-related products. Each command returns a set of 'properties' and major and minor error codes. In many cases, the result of one command is used as input to the next command. Wholesale commands are either synchronous or asynchronous. Generally, customer creation and management commands are synchronous, while domain creation and management commands are asynchronous. An "as-fast-as-possible" fulfillment system for asynchronous commands maintains queues in order to guarantee that the order is not lost in the case of external system problems. Typical synchronous response times are several seconds or less, while asynchronous times, for example, to complete a registration, are typically less than a few minutes. There are two primary security mechanisms in the NSl Wholesale System. All Wholesalers must supply the IP addresses from which they will connect and establish Secure Socket Layer ("SSL") connections to the NSl Wholesale System. They also must use an account number and password when issuing session commands. NSl provides these ahead of time to Wholesalers. While this system provides numerous advantages over the prior art, there is a need to make the system universally available. Accordingly, there is presently a need for methods and apparatus which provides an application program interface to allow computer application programs of other users, to access the Wholesale system and to conduct transactions associated with the registration and management of Internet domain names in the same manner as the WSP. SUMMARY OF THE INVENTION To achieve these objects and other advantages and in accordance with the puφoses of the invention, as embodied and broadly described herein. The present invention is directed to methods and apparatus for interfacing a user application program to a system for conducting transactions associated with managing Internet domain names by establishing over the Internet a connection between the user and the system; authenticating the right of the user to conduct a transaction associated with managing Internet domain names; establishing a secure socket layer within the application program interface and the system; receiving a request in the application program interface from the applications program to initiate a transaction following such authentication; and transmitting commands by the application program interface to the system effectuating the transaction. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are incoφorated in and constitute a part of this specification, illustrate an embodiment of the invention and together with the description, serve to explain the principles of the invention. In the drawings, FIG. 1 is a diagram of a preferred embodiment of the invention, wherein an application program interface, WSP Java API, implements the functionality of a WSP in a series of Java object classes; FIG. 2 shows an exemplary flowchart of the method for interfacing a user application program to a system for conducting transactions associated with managing Internet domain names; FIG. 3 shows an exemplary diagram of the apparatus for interfacing a user application program to a system for conducting transactions associated with managing Internet domain names. DETAILED DESCRIPTION Reference will now be made in detail to the present preferred embodiment of the invention, an example of which is illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like elements. The methods and apparatus provides an application program interface that is accessed by user application programs to establish a connection to a system for conducting transactions associated with managing Internet domain names. Referring to FIG. 1, a computer application program 12 typically provides an interface to the user to collect customer data. The computer application program 12 typically issues a session request to the application program interface, WSP Java API 14, in order to establish a session over the Internet 10 with the Wholesale System 16 and to issue various commands. The WSP Java API 14 is essentially a Java 'wrapper' of the WSP. It consists of two main classes: NSIWholesaleAPI and WSPResponse. The NSIWholesaleAPI contains all of the methods for creating customers, products, and services. WSPResponse is a single class returned from most methods and contains the result of the issued command request and will optionally include any additional data that was generated by the request. One advantage of using WSP Java API 14 is that when the NSIWholesaleAPI object is created, the object creates a 'pool' of SSL connections to the Wholesale system 16. This class removes the need to issue a 'session' command, and removes the burden from a Wholesaler of making and managing SSL connections. Multi-threaded applications may also use this connection pool. FIG. 2, shows an exemplary flowchart of the invention. A user 20, sends a request to the application program 12 to conduct a transaction associated with managing internet domain names. The application program 12 typically provides an interface to a user to collect customer data. The application program 12 typically issues a session request to the application program interface 14 to establish a session over the Internet 10 with the Wholesale System 16. The application program interface 14 will authenticate a user's right to conduct a transaction by attempting to connect to the Wholesale System 16 using user account information received from the application program 12. If the authentication fails, the application program interface 14 will attempt two additional authentications. The application program interface 14 will send the result of the authentication to the application program 12. If the authentication is successful, the application program interface 14 will establish a secure socket layer with the Wholesale System 16. The application program 12 will send a request to the application program interface 14 to make available the set of commands through the instantiation of an object of class NSIWholesaleAPI. The application program 12 may now send a request to any of the object methods to request the processing of a command. The application program interface 14 will receive the command request along with any data. The application program interface 14 will format the data and the command into a string as described in detail in the aforementioned copending U.S. Patent Application Serial No. 09/544,305. The application program 14 will then transmit the request across the Internet 10 to the Wholesale System 16 to effectuate the transaction. The Wholesale System 16 will process the request and will return the result of the transaction across the Internet 10 to the application program interface 14. The application program interface 14 will send a response to the application program 12. FIG. 3, is a diagram of an exemplary computer environment in which methods consistent with the present invention may be implemented. A component is provided for a user 20, to send a request to the application program 12 to conduct a transaction associated with managing Internet domain names. The application program 12 typically provides an interface to user 20 to collect customer data. The application program 12 typically issues a session request to the application program interface 14 to establish a session over the Internet 10 with the Wholesale System 16. A component is also provided for authenticating the right of the user 20 to conduct a transaction. The application program interface 14 will authenticate a user's right to conduct a transaction by attempting to connect to the Wholesale System 16 using the user account information received from the application program 12. If the authentication fails, the application program interface 14 will attempt two additional authentications. The application program interface 14 will send the result of the authentication to the application program 12. A component is also provided for establishing a secure socket layer if the authentication is successful. The application program interface 14 will establish a secure socket layer with the Wholesale System 16. A component is also provided for initiating a transaction following a successful authentication. The application program 12 will send a request to the application program interface 14 to make available the set of commands that are available in the Wholesale System 16 through the instantiation of an object of class NSIWholesaleAPI. The application program 12 may now send a request to any of the object methods to request the processing of a command. The application program interface 14 will receive the command request along with any data. A component is also provided for transmitting commands through the secure socket layer. The application program interface 14 will format the data and command into a string as described in detail in the aforementioned copending U.S. Patent Application Serial No. 09/544,305. The application program 14 will then transmit the request across the Internet 10 to the Wholesale System 16 to effectuate the transaction. The Wholesale System 16 will process the request and return the result of the transaction across the Internet 10 to the application program interface 14. The application program interface 14 will send a response to the application program 12. The name of the WSP Java API configuration file is typically WSP j avaAPI . conf . This file contains specific information about each Wholesale user. The values for the parameters in that file are provided when a Wholesale agreement is completed with a Registrar, such as NSL The file includes the following parameters: WholesaleAPI .minConnections=2 WholesaleAPI .maxConnections=2 WholesaleAPI . connectionSoTimeout=120000 WholesaleAPI . connectionProtocol=WSPl .5 WholesaleAPI . server =XXX. netsol . com WholesaleAPI . port=X000 WholesaleAPI . retry=l WholesaleAPI. WholesalerAccountId=12345678 WholesaleAPI . WholesalerPassword=XXXXX-*XX The values indicated with an "X" will change from user to user. The definition of each of these parameters is as follows: Configuration File Parameters CLASS HIERARCHY The NSIWholesaleAPI class constructs an instance of a new NSIWholesaleAPI object whose methods can be called to perform Wholesale-related activities, such as connecting to the Wholesale System 16 over the Internet through a SSL, and it allows the computer application program 12 to create and manage Internet domain names. The class definition for NSIWholesaleAPI includes the following: Constructor Summary NSIWholesaleAPI ( ) Method Summary WSPResponse createBusinessAccount (String aCompanyName , String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String a egalContact astName) This method creates a business customer account and returns an automatically generated customer account id. WSPResponse createBusinessAccount (String aCompanyName, String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, Methods inherited from class java.lang.Object equals, getClass, hashCode, notify, notifyAll, toStrinq, wait, wait, wait The WSPResponse class represents the various components of a WSP response. A WSPResponse will be returned for command request that are issued through the application program interface 14. The response will describe, in as much detail as possible, the result of the issued request, and will optionally include any additional information that was generated by the request. A result consists of a "result code" followed by a descriptive "result message." The result code consists of a major result code followed by a period ('.'), followed by a minor result code. The three-digit major result code provides a general indication of the success or failure of an issued request. In most cases, one or more result properties are returned. The three-digit minor result code may provide additional information about the major result code. Each command request has its own set of minor result code values or may have the value (000). The WSPResponse and the result code are described in more detail in the aforementioned copending U.S. Patent Application Serial No. 09/544,305. A result property consists of a property key followed by a colon (':'), followed by a property value. In some results, plain text is returned (e.g. information returned from the Help command). The result property is described in more detail in the aforementioned copending U.S. Patent Application Serial No. 09/544,305. The class definition for WSPResponse includes the following: Constructor Summary WSPResponse (String data) Parses a WSP text response and extracts and stores the various components. Methods inherited from class java.lang.Object equals, getClass, hashCode, notify, notifyAll, wait, wait, wait The NSIWholesaleException class is a user-defined exception class denoting a special error thrown by the methods in the class NSIWholesaleAPI. In particular, exceptions of the class NSIWholesaleException are thrown (a) when class initialization fails; (b) when a method in NSIWholesaleAPI is called without successfully initializing the class; (c) when a command cannot be completed (for example due to communications problems); or (d) to reframe an NSIException thrown at a lower level to give additional context information. The class WSPExcept ion is the parent for wholesale protocol exception classes which processes responses sent by Wholesale Server 16 to computer application program 12. This is a service class, not used explicitly. It furnishes the base methods for storing error information common to all exception classes. The classes InvalidArgumentException and InvalidResponseFormatException are the detail class children of WSPException. Both methods have the same internal functionality as WSPExcepton. In addition, both classes are independent, so that methods receiving the thrown exceptions know the type of error detected, even if the error context information is identical. In particular, the WSPResponse class throws InvalidArgumentException if the data returned by Wholesale Server 16 as part of a command, is invalid. The WSPResponse class throws class InvalidResponseFormatException if the data returned by the Wholesale Server 16 as part of a command, is not properly formatted. The class definition for NSIWholesaleException includes the following: Constructor Summary NSIWholesaleExceptio ( ) NSIWholesaleException (String message) NSIWholesaleException (String message, Throwable throwable) NSIWholesaleException (Throwable throwable) Methods inherited from class java.lang.Throwable filllnStackTrace, getLocalizedMessage, getMessage, printStackTrace , printStackTrace , printStackTrace Methods inherited from class java.lang. Object equals, getClass, hashCode, notify, notifyAll, wait, wait, wait The class definition for WSPException includes the following: Constructor Summary WSPException ( ) WSPException (String message) WSPExceptio (String message, Throwable x) Methods inherited from class java.lanq.Throwable filllnStackTrace, getLocalizedMessage, printStackTrace , printStackTrace , printStackTrace , toString Methods inherited from class java.lang.Object equals, getClass, hashCode, notify, notifyAll, wait, wait, wait The class definition for InvalidArgumentException is as follows: Constructor Summary InvalidArgumentException ( ) InvalidArgumentException (String message) InvalidArgumentExceptio (String message, Throwable x) Methods inherited from class java.lang.Throwable filllnStackTrace, getLocalizedMessage, printStackTrace , printStackTrace , printStackTrace , toString Methods inherited from class java.lang.Object equals, getClass, hashCode, notify, notifyAll, wait, wait, wait The class definition for InvalidResponseFormatException includes the following: Constructor Summary InvalidResponseFormatException ( ) InvalidResponseFormatException (String message) InvalidResponseFormatException (String message, Throwable x) Method Summary static String getJdkVersio ( ) Methods inherited from class java.lang.Throwable filllnStackTrace, getLocalizedMessage, printStackTrace, printStackTrace , printStackTrace , toString Methods inherited from class java.lang.Object equals, getClass, hashCode, notify, notifyAll, wait, wait, wait The invention will be further clarified by the following example showing a computer program file for creating a session with a Wholesale system to begin Wholesale operation, which is intended to be purely exemplary of the invention. try { NSIWholesaleAPI . init ( "WSPjavaAPI . conf" ) ; } catch (NSIWholesaleException e) { System. out .print ("Unable to initialize NSI Wholesale API:" + e) ,- System. exit (1) ; } //Having initialized the NSI Wholesale API, we now need to // create an instance of the API by calling constructor NSIWholesaleAPI () try { api = new NSIWholesaleAPI () ; } catch (NSIWholesaleException e) { System. out .print ( "Unable to initialize NSI Wholesale API:" + e) ; System. exit (1) ; } // // At this point, if no error has been thrown, then the session // is established, and a number of connections have been opened // in the connection pool. // // // Here, the call to methods on "api" are used to perform // wholesale related activities. For this use case, // there are none. // // End the session. This is done by calling the shutdown method on the // instance of the wholesale API that was created earlier. api . shutdown ( ) ; } The WSP Java API 14 is an implementation of the WSP. In every case where the WSP Java API 14 is used, the first steps are to initialize a session and then create an instance of the class to reference the methods. Individual calls to methods are instances of a single protocol exchange. Each call contains all necessary information (e.g., customer identification, contact information). Except for session information, no information carries over from method to method. As the example shows, the first evocation of a routine in the WSP Java API 14 is to the class method NSIWholesaleAPI.init to initialize the interface to the Wholesale System 16. The second evocation, creates an instance of the class NSIWholesaleAPI, which makes available to the application program 12 the methods to send commands to the Wholesale System 16. The application program 12 can now send command requests to the application program interface 14. The last evocation is to the shutdown method, which ends the session with the Wholesale System 16. It is to be noted that in the above description, references to Network Solutions, Inc. and NSI, including but not limited to references which are imbedded in the examples given of classes, methods, constructors, drawings, and the like, are intended to be exemplary only and not restricted to any particular implementation. While the foregoing description is based on a client-server architecture, those skilled in the art will recognize that other types of architecture may be used consistent with the invention. In addition, while the foregoing description is based on a software implementation, other - implementations may be used consistent with the invention. Further, while the foregoing description is based on the Java language, those skilled in the art will recognize that other types of language may be used consistent with the invention. Therefore, it is intended that this invention not be limited to the particular implementation and method disclosed herein, but that the invention include all implementations falling within the scope of the appended claims. The foregoing description is presented for illustration and explanation. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and modifications of variations are possible in light of the above teachings or may be acquired from practice of the invention. The principles of the invention and its practical application enable one skilled in the art to utilize the invention in various embodiments and with various modifications as are suited to the use contemplated. The class definition for NSIWholesaleAPI is as follows: / // Package // Λ package nsi .wholesale . toolkit . javaapi ; // // Imports. // import Java. io. LineNumberReader ; import Java. io. FileReader ; import Java. io. IOException; import Java. io. FileNotFoundException; import Java. util . StringTokenizer; import j ava. util . Properties; import j ava. util .Enumeration, ■ import Java. util . NoSuchElementException; import nsi .wholesale . toolkit . javaapi .util .resourcepool .Resource; import nsi .wholesale. toolkit . javaapi .util . resourcepool .ResourceException; Copyright (c) 2000 Network Solutions, Inc -<BR> This Java-based Wholesale Services Protocol (WSP) API provides programmer access to the Wholesale Services Protocol Server. The Wholesale Services Protocol (WSP) is a simple, connection-based, ASCII text-based protocol. It allows wholesalers to securely and reliably create, modify, and lookup customer accounts and various products via a single client/server interface. *<BR> <BR> * $Log$ *<BR> <BR> */ public class NSIWholesaleAPI / {/ // Beginning of Required/Standard Fields // /** Serial Version */ static long serialVersion = IL; /** Release Version */ static double version = I.ID; /** SCCS control ID */ static final String sccsID = "©(#) wholesale-sdk_dl .12.1.3 08/04/00 10:27:19 NSIWholesaleAPI . j ava NSI"; /** JDK Version */ static String JdkVersion = "1.1.7"; // Static Accessor Method (s) ... /** Static accessor method to get serial version */ static public long getSerialVersion ( ) { return serialVersion; } /** Static accessor method to get release version */ static public double getVersionO { return version,- } /** Static accessor method to get JDK version */ static public String getJdkVersion ( ) { return JdkVersion; } / // End of Required/Standard Fields / // class (static) variable (s) ... // _ /** The name of this class */ private static final String className = "NSIWholesaleAPI"; /** Connection pool */ protected static NSIWholesalePool pool = null; /** Retry count */ protected static int retry = 1; // Supported Commands // /** Ease-of-use constant for Command: Session */ public static final String COMMAND_SESSION = "Session"; /** Ease-of-use constant for Command: Describe */ public static final String COMMAND_DESCRIBE = "Describe"; /** Ease-of-use constant for Command: Verify */ public static final String COMMAND_VERIFY = "Verify", /** Ease-of-use constant for Command: Create */ public static final String COMMAND_CREATE = "Create" /** Ease-of-use constant for Command: Delete */ public static final String COMMAND_DELETE = "Delete" /** Ease-of-use constant for Command: Modify */ public static final String COMMAND_MODIFY = "Modify" /** Ease-of-use constant for Command: Renew */ public static final String COMMAND_RENEW = "Renew"; /** Ease-of-use constant for Command: Generate */ public static final String COMMAND_GENERATE = "Generate"; /** Ease-of-use constant for Command: Lookup */ public static final String C0MMAND_LOOKUP = "Lookup"; /** Ease-of-use constant for Command: Help */ public static final String COMMAND_HELP = "Help"; /** Ease-of-use constant for Command: Quit */ public static final String COMMAND_QUIT = "Quit"; // Supported Classes // /** Ease-of-use constant for Class: DomainName */ public static final String CLASS_DOMAIN_NAME = "DomainName"; /** Ease-of-use constant for Class: Domains */ public static final String CLASS_DOMAINS = "Domains"; /** Ease-of-use constant for Class: Password */ public static final String CLASS_PASSWORD = "Password"; /** Ease-of-use constant for Class: IndividualAccount */ public static final String CLASS_INDIVIDUAL_ACCOUNT = " IndividualAccount " ; /** Ease-of-use constant for Class: BusinessAccount */ public static final String CLASS_BUSINESS_ACCOUNT = "BusinessAccount"; /** Ease-of-use constant for Class: TechnicalContact */ public static final String CLASS_TECHNICAL_CONTACT = "TechnicalContact"; /** Ease-of-use constant for Class: Domain */ public static final String CLASS_DOMAIN = "Domain"; /** Ease-of-use constant for Class: DnsHosting */ public static final String CLASS_DNS_HOSTING = "DnsHosting"; // Supported Command-Class Combinations // /** Ease-of-use constant for Command-Class Combination: VerifyDomainName */ public static final String COMBO_VERIFY_DOMAIN_NAME = COMMAND_VERIFY + " " + CLASS_DOMAIN_NAME; /** Ease-of-use constant for Command-Class Combination: Verify Domains */ public static final String COMBO_VERIFY_DOMAINS = COMMAND_VERIFY + " " + CLASS_DOMAINS; /** Ease-of-use constant for Command-Class Combination: Verify Password */ public static final String COMBO_VERIFY_PASSWORD = COMMAND_VERIFY + " " + CLASS_PASSWORD; /** Ease-of-use constant for Command-Class Combination: Create IndividualAccount */ public static final String COMBO_CREATE_INDIVIDUAL_ACCOUNT = COMMAND_CREATE + " " + CLASS_INDIVIDUAL_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Create BusinessAccount */ public static final String COMBO_CREATE_BUSINESS_ACCOUNT = COMMAND_CREATE + " " + CLASS_BUSINESS_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Create TechnicalContact */ public static final String COMBO_CREATE_TECHNICAL_CONTACT = COMMAND_CREATE + " " + CLASS_TECHNICAL_CONTACT; /** Ease-of-use constant for Command-Class Combination: Create Domain */ public static final String COMBO_CREATE_DOMAIN = COMMAND_CREATE + " " + CLASS_DOMAIN; /** Ease-of-use constant for Command-Class Combination: Create DnsHosting */ public static final String COMBO_CREATE_DNS_HOSTING = COMMAND_CREATE + " " + CLASS_DNS_HOSTING; /** Ease-of-use constant for Command-Class Combination: Delete Domain */ public static final String COMBO_DELETE_DOMAIN = COMMAND_DELETE + " " + CLASS_DOMAIN; /** Ease-of-use constant for Command-Class Combination: Delete DnsHosting */ public static final String COMBO_DELETE_DNS_HOSTING = COMMAND_DELETE + " " + CLASS_DNS_HOSTING; /** Ease-of-use constant for Command-Class Combination: Delete IndividualAccount */ public static final String COMBO_DELETE_INDIVIDUAL_ACCOUNT = COMMAND_DELETE + " " + CLASS_INDIVIDUAL_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Delete BusinessAccount */ public static final String COMBO_DELETE_BUSINESS_ACCOUNT = COMMAND_DELETE + " " + CLASS_BUSINESS_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Modify Domain */ public static final String COMBO_MODIFY_DOMAIN = COMMAND_MODI Y + " » + CLASS_DOMAIN; /** Ease-of-use constant for Command-Class Combination: Modify IndividualAccount */ public static final String COMBO_MODIFY_INDIVIDUAL_ACCOUNT = COMMAND_MODIFY + " " + CLASS_INDIVIDUAL_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Modify BusinessAccount */ public static final String COMBO_MODIFY_BUSINESS_ACCOUNT = COMMAND_MODIFY + " " + CLASS_BUSINESS_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Modify TechnicalContact */ public static final String COMBO_MODIFY_TECHNICAL_CONTACT = COMMAND_MODIFY + " " + CLASS_TECHNICAL_CONTACT; /** Ease-of-use constant for Command-Class Combination: Modify Password */ public static final String COMBO_MODIFY_PASSWORD = COMMAND_MODIFY + " " + CLASS_PASSWORD; /** Ease-of-use constant for Command-Class Combination: Renew Domain */ public static final String COMBO_RENEW_DOMAIN = COMMAND_RENEW + " " + CLASS_DOMAIN; /** Ease-of-use constant for Command-Class Combination: Renew DnsHosting */ public Static final String COMBO_RENEW_DNS_HOSTING = COMMAND_RENEW + " " + CLASS_DNS_HOSTING; /** Ease-of-use constant for Command-Class Combination: Generate DomainName */ public static final String COMBO_GENERATE_DOMAIN_NAME = COMMAND_GENERATE + " " + CLASS_DOMAIN_NAME; /** Ease-of-use constant for Command-Class Combination: Lookup Domain */ public static final String COMBO_LOOKUP_DOMAIN = COMMAND_LOOKUP + " " + CLASS_DOMAIN; /** Ease-of-use constant for Command-Class Combination: Lookup DnsHosting */ public static final String COMBO_LOOKUP_DNS_HOSTING = COMMAND_LOOKUP + " " + CLASS_DNS_HOSTING; /** Ease-of-use constant for Command-Class Combination: Lookup IndividualAccount */ public static final String COMBO_LOOKUP_INDIVIDUAL_ACCOUNT = COMMAND_LOOKUP + " " + CLASS_INDIVIDUAL_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Lookup BusinessAccount */ public static final String COMBO_LOOKUP_BUSINESS_ACCOUNT = COMMAND_LOOKUP + " " + CLASS_BUSINESS_ACCOUNT; /** Ease-of-use constant for Command-Class Combination: Lookup TechnicalContact */ public static final String COMBO_LOOKUP_TECHNICAL_CONTACT = COMMAND_LOOKUP + " " + CLASS_TECHNICAL_CONTACT; // Supported Attributes // /** Ease-of-use constant for Attribute Key: FirstName */ public static final String ATTR_FIRST_NAME = "FirstName"; /** Ease-of-use constant for Attribute Key: LastName */ public static final String ATTR_LAΞT_NAME = "LastName"; /** Ease-of-use constant for Attribute Key: Addressl */ public static final String ATTR_ADDRESS1 = "Addressl"; /** Ease-of-use constant for Attribute Key: Address2 */ public static final String ATTR_ADDRESS2 = "Address2"; /** Ease-of-use constant for Attribute Key: Address3 */ public static final String ATTR_ADDRESS3 = "Address3"; /** Ease-of-use constant for Attribute Key: Address4 */ public static final String ATTR_ADDRESS4 = "Address4"; /** Ease-of-use constant for Attribute Key: Addressδ */ public static final String ATTR_ADDRESS5 = "AddressS"; /** Ease-of-use constant for Attribute Key: City */ public static final String ATTR_CITY = "City"; /** Ease-of-use constant for Attribute Key: State */ public static final String ATTR_STATE = "State"; /** Ease-of-use-" constant for Attribute Key: PostalCode */ public static final String ATTR_POSTAL_CODE = "PostalCode"; /** Ease-of-use constant for Attribute Key: CountryCode */ public static final String ATTR_COUNTRY_CODE = "CountryCode"; /** Ease-of-use constant for Attribute Key: Phone */ public static final String ATTR_PHONE = "Phone"; /** Ease-of-use constant for Attribute Key: Fax */ public static final String ATTR_FAX = "Fax"; /** Ease-of-use constant for Attribute Key: Email */ public static final String ATTR_EMAIL = "Email"; /** Ease-of-use constant for Attribute Key: CustomerAccountld */ public static final String ATTR_CUSTOMER_ACCOUNT_ID = "CustomerAccountld" ; /** Ease-of-use constant for Attribute Key: CustomerPassword */ public static final String ATTR_CUSTOMER_PASSWORD = "CustomerPassword /** Ease-of-use constant for Attribute Key: AuthQuestion */ public static final String ATTR_AUTH_QUESTION = "AuthQuestion" ; /** Ease.-of-use constant for Attribute Key: AuthAnswer */ public static final String ATTR_AUTH_ANSWER = "AuthAnswer"; /** Ease-of-use constant for Attribute Key: CompanyName */ public static final String ATTR_COMPANY_NAME = "CompanyName"; /** Ease-of-use constant for Attribute Key: CompanyType */ public static final String ATTR_COMPANY_TYPE = "CompanyType"; /** Ease-of-use constant for Attribute Key: LegalContactFirstName */ public static final String ATTR_LEGAL_CONTACT_FIRST_NAME = "LegalContactFirstName"; /** Ease-of-use constant for Attribute Key: LegalContactLastName */ public static final String ATTR_LEGAL_CONTACT_LAST_NAME = "LegalContactLastName" ; /** Ease-of-use constant for Attribute Key: LegalContactAddressl */ public static final String ATTR_LEGAL_C0NTACT_ADDRESS1 = "LegalContactAddressl" , • /** Ease-of-use constant for Attribute Key: LegalContactAddress2 */ public static final String ATTR_LEGAL_C0NTACT_ADDRESS2 = "LegalContactAddress2" ; /** Ease-of-use constant for Attribute Key: LegalContactAddress3 */ public static final String ATTR_LEGAL_CONTACT_ADDRESS3 = "LegalContactAddress3" ; /** Ease-of-use constant for Attribute Key: LegalContactAddress4 */ public static final String ATTR_LEGAL_CONTACT_ADDRESS4 = "LegalContactAddress4" ; /** Ease-of-use constant for Attribute Key: LegalContactAddressS */ public static final String ATTR_LEGAL_CONTACT_ADDRESS5 = "LegalContactAddress5" ; /** Ease-of-use constant for Attribute Key: LegalContactCity */ public static final String ATTR_LEGAL_CONTACT_CITY = "LegalContactCity" /** Ease-of-use constant for Attribute Key: LegalContactState */ public static final String ATTR_LEGAL_CONTACT_STATE = "LegalContactState" ; /** Ease-of-use constant for Attribute Key: LegalContactPostalCode */ public static final String ATTR_LEGAL_CONTACT_POSTAL_CODE = "LegalContactPostalCode" ; /** Ease-of-use constant for Attribute Key: LegalContactCountryCode */ public static final String ATTR_LEGAL_CONTACT_COUNTRY_CODE = "LegalContactCountryCode" ; /** Ease-of-use constant for Attribute Key: LegalContactPhone */ public static final String ATTR_LEGAL_CONTACT_PHONE = "LegalContactPhone"; /** Ease-of-use constant for Attribute Key: LegalContactFax */ public static final String ATTR_LEGAL_CONTACT_FAX = "LegalContactFax" ,- /** Ease-of-use constant for Attribute Key: LegalContactEmail */ public static final String ATTR_LEGAL_CONTACT_EMAIL = "LegalContactEmail"; /** Ease-of-use constant for Attribute Key: Organization */ public static final String ATTR_ORGANIZATION = "Organization"; /** Ease-of-use constant for Attribute Key: TechContactPassword */ public static final String ATTR_TECH_CONTACT_PASSWORD = "TechContactPassword"; /** Ease-of-use constant for Attribute Key: DomainName */ public static final String ATTR_DOMAIN_NAME = "DomainName"; /** Ease-of-use constant for Attribute Key: HostNamel */ public static final String ATTR_H0ST_NAME1 = "HostNamel 1 /** Ease-of-use constant for Attribute Key: HostAddrl */ public static final String ATTR_H0ST_ADDR1 = "HostAddrl", /** Ease-of-use constant for Attribute Key: HostName2 */ public static final String ATTR_H0ST_NAME2 = "HostName2' /** Ease-of-use constant for Attribute Key: HostAddr2 */ public static final String ATTR_HOST_ADDR2 = "HostAddr2" , /** Ease-of-use constant for Attribute Key: Hostldl */ public static final String ATTR_H0ST_ID1 = "Hostldl"; /** Ease-of-use constant for Attribute Key: HostId2 */ public static final String ATTR_H0ST_ID2 = "HostId2"; /** Ease-of-use constant for Attribute Key: TechContactld */ public static final String ATTR_TECH_CONTACT_ID = "TechContactld"; /** Ease-of-use constant for Attribute Key: IspPassword */ public static final String ATTR_ISP_PASSWORD = "IspPassword"; /** Ease-of-use constant for Attribute Key: Protocol (returned by Describe) */ public static final String ATTR_PR0T0C0L = "Protocol"; /** Ease-of-use constant for Attribute Key: Dns Hosting Created (returned by Create DnsHosting) */ public static final String ATTR_DNS_HOSTING_CREATED = "Dns Hosting Created"; // Supported Parameters // /** Ease-of-use constant for Parameter Key: -WholesalerAccountld */ public static final String PARM_WHOLESALER_ACCOUNT_ID = "- WholesalerAccountld" ; /** Ease-of-use constant for Parameter Key: -WholesalerPassword */ public static final String PARM_WHOLESALER_PASSWORD = " - WholesalerPassword" ; /** Ease-of-use constant for Parameter Key: -Target */ public static final String PARM_TARGET = "-Target"; /** Ease-of-use constant for Parameter Key: -DomainTarget */ public static final String PARM_DOMAIN_TARGET = "-DomainTarget"; /** Ease-of-use constant for Parameter Key: -Keywords */ public static final String PARM_KEY_W0RDS = "-Keywords"; /** Ease-of-use constant for Parameter Key: -CustomerAccountld */ public static final String PARM_CUSTOMER_ACCOUNT_ID = "-" + ATTR_CUSTOMER_ACCOUNT_ID; /** Ease-of-use constant for Parameter Key: -CustomerPassword */ public static final String PARM_CUSTOMER_PASSWORD = "-" + ATTR_CUST0MER_PASSWORD ; /** Ease-of-use constant for Parameter Key: -DomainName */ public static final String PARM_DOMAIN_NAME = "-" + ATTR_DOMAIN_NAME; /** Ease-of-use constant for Parameter Key: -TechContactld */ public static final String PARM_TECH_CONTACT_ID = "-" + ATTR_TECH_CONTACT_ID; /** Ease-of-use constant for Parameter Key: -TechContactPassword */ public static final String PARM_TECH_CONTACT_PASSWORD = "-" + ATTR_TECH_CONTACT_PASSWORD; /** Ease-of-use constant for Parameter Key: -IspPassword */ public static final String PARM_ISP_PASSWORD = "-" + ATTR_ISP_PASSWORD; / // class (static) method(s) ... / /** * Initializes the Wholesale Services Protocol API. * * ©param String name of configuration files containing property list * ©return void * ©see NSIWholesaleAPI#init * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException if initialization fails */ public static void init (String configFileName) throws NSIWholesaleException { System. out .println ( "NSIWholesaleAPI . init (String) started" ) ; Properties configProps = new Properties () ; try { LineNumberReader in = new LineNumberReader (new FileReader (configFileName) ) ; String line = in. readLine () ; while (line != null) { line = line. trim () ; if ( (line. length () > 0) && (line . startsWith ( "#" ) == false) ) { try { StringTokenizer st = new StringTokenizer (line, " = "),- String propertyKey = st .nextToken() ; String propertyValue = st .nextToken () ■ configProps .put (propertyKey, propertyValue) ; } catch (NoSuchElementException nsee) { System. err. println ( "NSIWholesaleAPI . init (String) : Error Reading Config File" + nsee) ; throw new NSIWholesaleException ( "Error reading Configuration File " + configFileName) ; } } line = in.readLine () ,- } } catch (FileNotFoundException fnfe) { System. err .println ( "NSIWholesaleAPI . init (String) : Configuration File Not Found " + fnfe) ; throw new NSIWholesaleException ( "Configuration File Not Found " + configFileName) ; } catch (IOException ioe) { System. err .println( "NSIWholesaleAPI . init (String) : IO Exception reading configuration file " + ioe) ; throw new NSIWholesaleException ("IO Exception reading configuration file " + configFileName) ; } catch (Exception e) { System. err .println ( "NSIWholesaleAPI . init (String) : Exception reading configuration file " + e) ; throw new NSIWholesaleException ( "Exception reading configuration file " + configFileName) ; } NSIWholesaleAPI . init (configProps) ; System. out .println ( "NSIWholesaleAPI . init (String) completed successfully") ; } /** * Initializes the Wholesale Services Protocol API. * <BR> * All of the following parameters should be * passed in through the properties file: <PRE> WholesaleAPI .minConnections - Connections to use on startup (1,2,5, 10) WholesaleAPI .maxConnections - Maximum Connections (5,10,20) WholesaleAPI . connectionSoTimeout - (Provided by NSI) Enable/disable Socket SO TIMEOUT with the specified timeout, in milliseconds WholesaleAPI .connectionProtocol - (Provided by NSI) Wholesale Services Protocol Version WholesaleAPI. server - (Provided by NSI) The secure wholesale server at NSI WholesaleAPI. port - (Provided by NSI) The port on that machine WholesaleAPI .retry - The retry count, if a transient error occurs (2,3) WholesaleAPI. WholesalerAccountld - (Provided by NSI) The Wholesaler Account number WholesaleAPI .WholesalerPassword - (Provided by NSI) The Password for that account </PRE> * ©param properties Properties file containing configuration settings * ©return void * ©see NSIWholesaleAPI#NSIWholesaleAPI * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException if initialization fails */ public static void init (Properties properties) throws NSIWholesaleException { System. out .println ( "NSIWholesaleAPI . init (Properties) started" ) ; int min = parselnt ( properties .getProperty ( "WholesaleAPI .minConnections") ) ; int max = parselnt ( properties .getProperty ("WholesaleAPI .maxConnections" ) ) ; int connectionSoTimeout = parselnt ( properties .getProperty ("WholesaleAPI .connectionSoTimeout" ) ) ; String connectionProtocol = properties . getProperty ( "WholesaleAPI . connectionProtocol " ) ; String server = properties .getProperty ( "WholesaleAPI . server" ) ; int port = parselnt (properties .getProperty ( "WholesaleAPI .port" )) ; retry = parselnt (properties .getProperty ( "WholesaleAPI . retry" )) ; String WholesalerAccountld = properties. getProperty ( "WholesaleAPI .WholesalerAccountld" ) ; String WholesalerPassword = properties. getProperty ( "WholesaleAPI .WholesalerPassword" ) ; System. out .println ( "connectionProtocol = " + connectionProtocol); System. out .println ("server = " + server); System. out .println ("port = " + port); System. out .println ("WholesalerAccountld = " + WholesalerAccountld) ; System. out .println ( "WholesalerPassword = " + WholesalerPassword); System. out .println ("NSIWholesaleAPI . init (Properties) constructing new NSIWholesalePool") ; pool = new NSIWholesalePool (server, port, min, max, WholesalerAccountld, WholesalerPassword, retry, connectionSoTimeout) ; NSIWholesaleAPI api = new NSIWholesaleAPI () ; if (api .verifyConnectionProtocol (connectionProtocol) != true) { api = null; throw new NSIWholesaleException ( "Failed to verify connection protocol " + connectionProtocol) ; } api = null; System. out .printIn ( "NSIWholesaleAPI .init (Properties) completed successfully" ) ; } // // static initializer block ... // ... // instance Variable (s) ... // // // Constructor (s) // /** * Constructs a new NSIWholesaleAPI object. NSIWholesaleAPI MUST have * been initialized BEFORE any NSIWholesaleAPI objects can be constructed. * ©see NSIWholesaleAPI#init * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException if NSIWholesaleAPI has not yet * been initialized */ public NSIWholesaleAPI () throws NSIWholesaleException { if (pool == null) throw new NSIWholesaleException ( "Must initialize API before use" ) ,- } // // Accessors and Mutators // // // General Methods // //#--BEGIN API / * This method is used to authenticate a wholesaler and to provide * the wholesaler with access to Session commands. Once a session * has been established, the Session command may not be issued * again * <BRxPRE> Expected Major Result Code: SESSION_CREATED * </PRExBR> * ©param pWholesalerAccountld the parameter value * ©param pWholesalerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi . wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see COMMAND_SESSION * ©see PARM_WHOLESALE_ACCOUNT_ID * ©see PARM_WHOLESALE_PASSWORD * ©see WSPResponse#SESSION_CREATED * ©see WSPResponse#AUTHENTICATION_FAILED * */ WSPResponse session ( String pWholesalerAccountld, String pWholesalerPassword) throws NSIWholesaleException { return session ( pWholesalerAccountld, pWholesalerPassword, new Properties () , 0) ; } ** * This method is used to authenticate a wholesaler and to provide * the wholesaler with access to Session commands. Once a session * has been established, the Session command may not be issued * again * <BRxPRE> Expected Major Result Code: SESSION_CREATED * </PRExBR> * ©param pWholesalerAccountld the parameter value * ©param pWholesalerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi . holesale . toolki . avaapi . NSIWholesaleException when unable to complete command * ©see COMMAND_SESSION * ©see PARM_WHOLESALE_ACCOUNT_ID * ©see PARM_WHOLESALE_PASSWORD * ©see WSPResponse#SESSION_CREATED * ©see WSPResponse#AUTHENTICATION_FAILED * */ WSPResponse session ( String pWholesalerAccountld, String pWholesalerPassword, Properties optionalAttributes) throws NSIWholesaleException { return session ( pWholesalerAccountld, pWholesalerPassword, optionalAttributes, 0) ; } protected WSPResponse session ( String pWholesalerAccountld, String pWholesalerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". sessio (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkou () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) allParmsAndAttrs .put (PARM_WHOLESALER_ACCOUNT_ID, pWholesalerAccountld) ; allParmsAndAttrs .put (PARM_WHOLESALER_PASSWORD, pWholesalerPassword) ; returnCode = conn. makeRequest (COMMAND_SESSION, allParmsAndAttrs) ,- pool .checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return session ( pWholesalerAccountld, pWholesalerPassword, optionalAttributes , count + 1) ; } } } /** * This method provides information about a specified target. * Currently, the only supported target is "Protocol". * This target tells Describe to return the current protocol version * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_PROTOCOL * </PRExBR> * ©param pTarget the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_DESCRIBE * ©see NSIWholesaleAPI#PARM_TARGET * ©see NSIWholesaleAPI#ATTR_PROTOCOL * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIEΞ_BEING_RETURNED */ public WSPResponse describe (String pTarget) throws NSIWholesaleException { return describe (pTarget, new Properties () , 0); } ** * This method provides information about a specified target. * Currently, the only supported target is "Protocol". * This target tells Describe to return the current protocol version * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_PROTOCOL * </PRExBR> * ©param pTarget the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_DESCRIBE * ©see NSIWholesaleAPI#PARM_TARGET * ©see NSIWholesaleAPI#ATTR_PROTOCOL * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse describe (String pTarget, Properties optionalAttributes) throws NSIWholesaleException { return describe (pTarget, optionalAttributes, 0); } protected WSPResponse describe ( String pTarget, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .describe (String, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs. put (PARM_TARGET, pTarget) ; returnCode = conn. makeRequest (COMMAND DESCRIBE, allParmsAndAttrs) ; pool . checkln ( conn) ; return returnCode ; } catch (Exception e ) { try { pool . release (conn) ; } catch (ResourceException re) { System. err. println (methodName + "Caught ResourceException" + re) ; } finally { return describe ( pTarget , optionalAttributes, count + 1) ,- } } } /** * This method verifies whether or not a specified domain name is available. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pDomainName the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_VERIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN_NAME * ©see NSIWholesaleAPI#COMBO_VERIFY_DOMAIN_NAME * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse verifyDomainName ( String pDomainName) throws NSIWholesaleException { return verifyDomainName ( pDomainName , new Properties () , 0); } ** * This method verifies whether or not a specified domain name is available . * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pDomainName the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_VERIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN_NAME * ©see NSIWholesaleAPI#COMBO_VERIFY_DOMAIN_NAME * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse verifyDomainName ( String pDomainName, Properties optionalAttributes) throws NSIWholesaleException { return verifyDomainName ( pDomainName , optionalAttributes , 0) ; } protected WSPResponse verifyDomainName ( String pDomainName, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .verifyDomainName (String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null ; WSPResponse returnCode ; try { conn = (NSIWholesaleConnection) pool . checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName) ; returnCode = conn.makeRequest (COMBO_VERIFY_DOMAIN_NAME, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err. println (methodName + "Caught ResourceException" + re) ; } finally { return verifyDomainName ( pDomainName, optionalAttributes, count + 1) ; } ** * This method verifies if series of domains are available. The command * will take the domain target string and add the .com, .net, and .org * TLD suffix and verify the domain name availability. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 DomainName3 ...etc... * </PRExBR> * ©param pDomainTarget the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_VERIFY * ©see NSIWholesaleAPI#CLASS_DOMAINS * ©see NSIWholesaleAPI#COMBO_VERIFY_DOMAINS * ©see NSIWholesaleAPI#PARM_DOMAIN_TARGET * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse verifyDomains ( String pDomainTarget) throws NSIWholesaleException { return verifyDomains ( pDomainTarget , new Properties () , 0) ; } /** * This method verifies if series of domains are available. The command * will take the domain target string and add the .com, .net, and .org * TLD suffix and verify the domain name availability. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 : DomainName3 ... etc ... * </PRExBR> * ©param pDomainTarget the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_VERIFY * ©see NSIWholesaleAPI#CLASS DOMAINS * ©see NSIWholesaleAPI#COMBO_VERIFY_DOMAINS * ©see NSIWholesaleAPI#PARM_DOMAIN_TARGET * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse verifyDomains ( String pDomainTarget, Properties optionalAttributes) throws NSIWholesaleException { return verifyDomains ( pDomainTarget , optionalAttributes , 0); } protected WSPResponse verifyDomains ( String pDomainTarget, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .verifyDomains (String, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) ool. checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_DOMAIN_TARGET, pDomainTarget) ; returnCode = conn.makeRequest (COMBO_VERIFY_DOMAINS, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return verifyDomains ( pDomainTarget , optionalAttributes, count + 1) ,- } } ** * This method verifies whether or not a specified customer account id and * password are valid. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_VERIFY * ©see NSIWholesaleAPI#CLASS_PASSWORD * ©see NSIWholesaleAPI#COMBO_VERIFY_PASSWORD * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse verifyPassword ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return verifyPassword ( pCustomerAccountld, pCustomerPassword, new Properties () , 0) ; } /** * This method verifies whether or not a specified customer account id and * password are valid. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_VERIFY * ©see NSIWholesaleAPI#CLASS_PASSWORD * ©see NSIWholesaleAPI#COMBO_VERIFY_PASSWORD * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED */ public WSPResponse verifyPassword ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return verifyPassword ( pCustomerAccountld, pCustomerPassword, optionalAttributes , 0); } protected WSPResponse verifyPassword ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .verifyPassword (String, String, Properties, int) " ; - if -(count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) ool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn.makeRequest (COMBO_VERIFY_PASSWORD, allParmsAndAttrs) ; pool .checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err.println (methodName + "Caught ResourceException" + re) ; } finally { return verifyPassword ( pCustomerAccountld, pCustomerPassword, optionalAttributes , count + 1) ; } } /** * This method creates an individual customer account and returns an * automatically generated customer account id. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aCity the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NΞIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_CITY * * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_CUSTOMER_ACCOUNT_ID * */ public WSPResponse createlndividualAccount ( String aFirstName, String aLastName, String aAddressl, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aCity) throws NSIWholesaleException { return createlndividualAccount ( aFirstName, aLastName, aAddressl, aCountryCode , aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aCity, new Properties () , 0) ; } /** * This method creates an individual customer account and returns an * automatically generated customer account id. * <BRxPRE> Optional Attribute Key(s): ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_EMAIL ATTR_FAX Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aCity the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_CUSTOMER_ACCOUNT_ID * */ public WSPResponse createlndividualAccount ( String aFirstName, String aLastName, String aAddressl, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aCity, Properties optionalAttributes) throws NSIWholesaleException { return createlndividualAccount ( aFirstName, aLastName, aAddressl, aCountryCode, aPhone , aCustomerPassword, aAuthQuestion, aAuthAnswer, aCity, optionalAttributes , 0) ; } protected WSPResponse createlndividualAccount ( String aFirstName, String aLastName, String aAddressl, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aCity, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .createlndividualAccount (StringX9, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs.put (ATTR_FIRST_NAME, aFirstName) ; allParmsAndAttrs.put (ATTR_LAST_NAME, aLastName) ; allParmsAndAttrs.put (ATTR_ADDRESS1, aAddressl); allParmsAndAttrs.put (ATTR_COUNTRY_CODE, aCountryCode) ; allParmsAndAttrs.put (ATTR_PHONE, aPhone) ; allParmsAndAttrs .put (ATTR_CUSTOMER_PASSWORD, aCustomerPassword) ; allParmsAndAttrs.put (ATTR_AUTH_QUESTION, aAuthQuestion); allParmsAndAttrs .put (ATTR_AUTH_ANSWER, aAuthAnswer) ; allParmsAndAttrs.put (ATTR_CITY, aCity) ; returnCode = conn. makeRequest (COMBO_CREATE_INDIVIDUAL_ACCOUNT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return createlndividualAccount ( aFirstName, aLastName, aAddressl, aCountryCode, aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aCity, optionalAttributes , count + 1) ; } } * * * This method creates an individual customer account and returns an * automatically generated customer account id. * <BRxPRE> Expected Major Result Code: C0MMAND_EXECUTI0N_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aCity the attribute value * ©param aState the attribute value * ©param aPostalCode the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolki .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_CUSTOMER_ACCOUNT_ID * */ public WSPResponse createlndividualAccount ( String aFirstName, String aLastName, String aAddressl, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aCity, String aState, String aPostalCode) throws NSIWholesaleException { return createlndividualAccount ( aFirstName, aLastName, aAddressl, aCountryCode , aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aCity, aState, aPostalCode, new Properties () , 0) ; }/* * * This method creates an individual customer account and returns an * automatically generated customer account id. * <BR><PRE> Optional Attribute Key(s): ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_EMAIL ATTR_FAX Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aFirstName the attribute value ' * ©param aLastName the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aCity the attribute value * ©param aState the attribute value * ©param aPostalCode the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS INDIVIDUAL ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR FAX * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR CUSTOMER ACCOUNT ID */ public WSPResponse createlndividualAccount ( String aFirstName, String aLastName, String aAddressl, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aCity, String aState, String aPostalCode, Properties optionalAttributes) throws NSIWholesaleException { return createlndividualAccount ( aFirstName, aLastName, aAddressl, aCountryCode, aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aCity, aState, aPostalCode, optionalAttributes , 0); } protected WSPResponse createlndividualAccount ( String aFirstName, String aLastName, String aAddressl, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aCity, String aState, String aPostalCode, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .createlndividualAccount (StringXll, Properties, int) " ,- if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs.put (ATTR_FIRST_NAME, aFirstName); allParmsAndAttrs .put (ATTR_LAST_NAME, aLastName) ; allParmsAndAttrs.put (ATTR_ADDRESS1, aAddressl) ,- allParmsAndAttrs .put (ATTR_COUNTRY_CODE, aCountryCode) ; allParmsAndAttrs .put (ATTR_PHONE, aPhone) ,• allParmsAndAttrs.put (ATTR_CUSTOMER_PASSWORD, aCustomerPassword) ; allParmsAndAttrs.put (ATTR_AUTH_QUESTION, aAuthQuestion) ; allParmsAndAttrs.put (ATTR_AUTH_ANSWER, aAuthAnswer) ; allParmsAndAttrs.put (ATTR_CITY, aCity) ; allParmsAndAttrs.put (ATTR_STATE, aState); allParmsAndAttrs.put (ATTR_POSTAL_CODE, aPostalCode) ; returnCode = conn. makeRequest (COMBO_CREATE_INDIVIDUAL_ACCOUNT, allParmsAndAttrs) ; pool .checkln (conn) ,- return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return createlndividualAccount ( aFirstName, aLastName, aAddressl, aCountryCode , aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aCity, aState, aPostalCode, optionalAttributes , count + 1) ; } ** * This method creates a business customer account and returns an * automatically generated customer account id. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aCompanyName the attribute value * ©param aCompanyType the attribute value * ©param aAddressl the attribute value * ©param aCity the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aLegalContactFirstName the attribute value * ©param aLegalContactLastName the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#ATTR_COMPANY_NAME * ©see NSIWholesaleAPI#ATTR_COMPANY_TYPE * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_LAST_NAME * * ©see NSIWholesaleAPI#ATTR STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESSl * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_CITY * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_STATE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_PHONE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see NSIWholesaleAPI#ATTR LEGAL CONTACT EMAIL * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPIftATTR CUSTOMER ACCOUNT ID */ public WSPResponse createBusinessAccount ( String aCompanyName, String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String aLegalContactLastName) throws NSIWholesaleException { return createBusinessAccount ( aCompanyName , aCompanyType, aAddressl, aCity, aCountryCode, aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aLegalContactFirstName, aLegalContactLastName, new Properties () , 0); } /** * This method creates a business customer account and returns an * automatically generated customer account id. * <BRxPRE> Optional Attribute Key(s): ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_EMAIL ATTR_FAX ATTR_LEGAL_CONTACT_ADDRESS1 ATTR_LEGAL_CONTACT_ADDRESS2 ATTR_LEGAL_CONTACT_ADDRESS3 ATTR_LEGAL_CONTACT_ADDRESS4 ATTR_LEGAL_CONTACT_ADDRESS5 ATTR_LEGAL_CONTACT_CITY ATTR_LEGAL_CONTACT_STATE ATTR_LEGAL_CONTACT_POSTAL_CODE ATTR_LEGAL_CONTACT_COUNTRY_CODE ATTR_LEGAL_CONTACT_PHONE ATTR_LEGAL_CONTACT_FAX ATTR_LEGAL_CONTACT_EMAIL Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACC0UNT_ID * </PRExBR> * ©param aCompanyName the attribute value * ©param aCompanyType the attribute value * ©param aAddressl the attribute value * ©param aCity the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aLegalContactFirstName the attribute value * ©param aLegalContactLastName the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale .toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#ATTR_COMPANY_NAME * ©see NSIWholesaleAPI#ATTR_COMPANY_TYPE * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_LAST_NAME * * ©see NSIWholesaleAPI#ATTR STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESSl * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_CITY * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_STATE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_PHONE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see NSIWholesaleAPI#ATTR LEGAL CONTACT EMAIL * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR CUSTOMER ACCOUNT ID */ public WSPResponse createBusinessAccount ( String aCompanyName, String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String aLegalContactLastName, Properties optionalAttributes) throws NSIWholesaleException { return createBusinessAccount ( aCompanyName, aCompanyType , aAddressl, aCity, aCountryCode , aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aLegalContactFirstName , aLegalContactLastName , optionalAttributes , 0); } protected WSPResponse createBusinessAccount ( String aCompanyName, String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String aLegalContactLastName, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .createBusinessAccount (StringXll, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs.put (ATTR_COMPANY_NAME, aCompanyName); allParmsAndAttrs.put (ATTR_COMPANY_TYPE, aCompanyType) ; allParmsAndAttrs.put (ATTR_ADDRESS1, aAddressl) ,• allParmsAndAttrs.put (ATTR_CITY, aCity) ; allParmsAndAttrs .put (ATTR_COUNTRY_CODE, aCountryCode) ; allParmsAndAttrs.put (ATTR_PHONE, aPhone); allParmsAndAttrs .put (ATTR_CUSTOMER_PASSWORD, aCustomerPassword) ; allParmsAndAttrs.put (ATTR_AUTH_QUESTION, aAuthQuestion) ; allParmsAndAttrs .put (ATTR_AUTH_ANSWER, aAuthAnswer) ; allParmsAndAttrs .put (ATTR_LEGAL_CONTACT_FIRST_NAME, aLegalContactFirstName) ; allParmsAndAttrs .put (ATTR_LEGAL_CONTACT_LAST_NAME, aLegalContactLastName) ; returnCode = conn. makeRequest (COMBO_CREATE_BUSINESS_ACCOUNT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return createBusinessAccount ( aCompanyName , aCompanyType , aAddressl, aCity, aCountryCode , aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer , aLegalContactFirstName , aLegalContactLastName , optionalAttributes , count + 1) ; } /** * This method creates a business customer account and returns an * automatically generated customer account id. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aCompanyName the attribute value * ©param aCompanyType the attribute value * ©param aAddressl the attribute value * ©param aCity the attribute value * ©param aState the attribute value * ©param aPostalCode the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aLegalContactFirstName the attribute value * ©param aLegalContactLastName the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#ATTR_COMPANY_NAME * ©see NSIWholesaleAPI#ATTR_COMPANY_TYPE * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR AUTH ANSWER * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_LAST_NAME * * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESSl * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_CITY * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_STATE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_COUNTRY_CODE * ©see NΞIWholesaleAPI#ATTR_LEGAL_CONTACT_PHONE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_EMAIL * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_CUSTOMER_ACCOUNT_ID * */ public WSPResponse createBusinessAccount ( String aCompanyName, String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String aLegalContactLastName, String aState, String aPostalCode) throws NSIWholesaleException { return createBusinessAccount ( aCompanyName , aCompanyType , aAddressl, aCity, aCountryCode , aPhone , aCustomerPassword, aAuthQuestion, aAuthAnswer, aLegalContactFirstName , aLegalContactLastName, aState, aPostalCode, new Properties () , 0) ; } /** * This method creates a business customer account and returns an * automatically generated customer account id. * <BRχPRE> Optional Attribute Key(s): ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_EMAIL ATTR_FAX ATTR_LEGAL_CONTACT_ADDRESS1 ATTR_LEGAL_CONTACT_ADDRESS2 ATTR_LEGAL_CONTACT_ADDRESS3 ATTR_LEGAL_CONTACT_ADDRESS4 ATTR_LEGAL_CONTACT_ADDRESS5 ATTR_LEGAL_CONTACT_CITY ATTR_LEGAL_CONTACT_STATE ATTR_LEGAL_CONTACT_POSTAL_CODE ATTR_LEGAL_CONTACT_COUNTRY_CODE ATTR_LEGAL_CONTACT_PHONE ATTR_LEGAL_CONTACT_FAX ATTR_LEGAL_CONTACT_EMAIL Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_CUSTOMER_ACCOUNT_ID * </PRExBR> * ©param aCompanyName the attribute value * ©param aCompanyType the attribute value * ©param aAddressl the attribute value * ©param aCity the attribute value * ©param aState the attribute value * ©param aPostalCode the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aCustomerPassword the attribute value * ©param aAuthQuestion the attribute value * ©param aAuthAnswer the attribute value * ©param aLegalContactFirstName the attribute value * ©param aLegalContactLastName the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_CREATE_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#ATTR_COMPANY_NAME * ©see NSIWholesaleAPI#ATTR_COMPANY_TYPE * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_LAST_NAME * * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESSl * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_CITY * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_STATE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_PHONE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_EMAIL * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_CUSTOMER_ACCOUNT_ID * */ public WSPResponse createBusinessAccoun ( String aCompanyName, String aCompanyType, String aAddressl, String aCity, . String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String aLegalContactLastName, String aState, String aPostalCode, Properties optionalAttributes) throws NSIWholesaleException { return createBusinessAccount ( aCompanyName, aCompanyType, aAddressl, aCity, aCountryCode, aPhone, aCustomerPassword, aAuthQuestion, aAuthAnswer, aLegalContactFirstName , aLegalContactLastName, aState, aPostalCode, optionalAttributes , 0) ; } protected WSPResponse createBusinessAccount ( String aCompanyName, String aCompanyType, String aAddressl, String aCity, String aCountryCode, String aPhone, String aCustomerPassword, String aAuthQuestion, String aAuthAnswer, String aLegalContactFirstName, String aLegalContactLastName, String aState, String aPostalCode, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .createBusinessAccount (StringX13 , Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) allParmsAndAttrs.put (ATTR_COMPANY_NAME, aCompanyName) ; allParmsAndAttrs.put (ATTR_COMPANY_TYPE, aCompanyType); allParmsAndAttrs.put (ATTR_ADDRESS1, aAddressl) ; allParmsAndAttrs.put (ATTR_CITY, aCity) ; allParmsAndAttrs .put (ATTR_COUNTRY_CODE, aCountryCode) ; allParmsAndAttrs .put (ATTR_PHONE, aPhone) ; allParmsAndAttrs.put (ATTR_CUSTOMER_PASSWORD, aCustomerPassword) ; allParmsAndAttrs .pu (ATTR_AUTH_QUESTION, aAuthQuestion) allParmsAndAttrs.put (ATTR_AUTH_ANSWER, aAuthAnswer) ; allParmsAndAttrs .put (ATTR_LEGAL_CONTACT_FIRST_NAME, aLegalContactFirstName) ; allParmsAndAttrs .put (ATTR_LEGAL_CONTACT_LAST_NAME, aLegalContactLastName) ; allParmsAndAttrs.put (ATTR_STATE, aState) ; allParmsAndAttrs.put (ATTR_POSTAL_CODE, aPostalCode) ; returnCode = conn. makeRequest ( COMBO_CREATE_BUSINESS_ACCOUNT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return createBusinessAccount ( aCompanyName , aCompanyType , - • aAddressl, aCity, aCountryCode , aPhone , aCustomerPassword, aAuthQuestion, aAuthAnswer, aLegalContactFirstName , aLegalContactLastName , aState, aPostalCode, optionalAttributes , count + 1) ; } } } /* * * This method creates a technical contact and returns an * automatically generated technical contact id (NIC Handle) . * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_TECH_CONTACT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aOrganization the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aEmail the attribute value * ©param aTechContactPassword the attribute value * ©param aCity the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi . wholesale . toolkit . j avaapi . NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_CREATE_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ORGANIZATION * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#ATTR_CITY * * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_FAX * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * */ public WSPResponse createTechnicalContact ( String aFirstName, String aLastName, String aOrganization, String aAddressl, String aCountryCode, String aPhone, String aEmail, String aTechContactPassword, String aCity) throws NSIWholesaleException { return createTechnicalContact ( aFirstName, aLastName, aOrganization, aAddressl, aCountryCode, aPhone, aEmail, aTechContactPassword, aCity, new Properties () , 0); } /** * This method creates a technical contact and returns an * automatically generated technical contact id (NIC Handle) . * <BRxPRE> Optional Attribute Key(s): ATTR FAX Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_TECH_CONTACT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aOrganization the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aEmail the attribute value * ©param aTechContactPassword the attribute value * ©param aCity the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_CREATE_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ORGANIZATION * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#ATTR_CITY * * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR FAX * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPIttATTR TECH CONTACT ID */ public WSPResponse createTechnicalContact ( String aFirstName, String aLastName, String aOrganization, String aAddressl, String aCountryCode, String aPhone, String aEmail, String aTechContactPassword, String aCity, Properties optionalAttributes) throws NSIWholesaleException { return createTechnicalContact ( aFirstName, aLastName, aOrganization, aAddressl, aCountryCode , aPhone, aEmail, aTechContactPassword, aCity, optionalAttributes , 0) ; } protected WSPResponse createTechnicalContact ( String aFirstName, String aLastName, String aOrganization, String aAddressl, String aCountryCode, String aPhone, String aEmail, String aTechContactPassword, String aCity, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .createTechnicalContact (StringX9, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (ATTR_FIRST_NAME, aFirstName) ,- allParmsAndAttrs.put (ATTR_LAST_NAME, aLastName); allParmsAndAttrs.put (ATTR_ORGANIZATION, aOrganization) ; allParmsAndAttrs.put (ATTR_ADDRESS1, aAddressl) , ■ allParmsAndAttrs.put (ATTR_COUNTRY_CODE, aCountryCode) ; allParmsAndAttrs .put (ATTR_PHONE, aPhone) ; allParmsAndAttrs.put (ATTR_EMAIL, aEmail); allParmsAndAttrs .put (ATTR_TECH_CONTACT_PASSWORD, aTechContactPassword) ,- allParmsAndAttrs.put (ATTR_CITY, aCity) , • returnCode = conn. makeRequest (COMBO_CREATE_TECHNICAL_CONTACT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re ) { System . err . println (methodName + " Caught ResourceException" + re) ; } f inally { return createTechnicalContact ( aFirstName, aLastName, aOrganization, aAddressl, aCountryCode , aPhone, aEmail, aTechContactPassword, aCity, optionalAttributes , count + 1) ; } } } /** * This method creates a technical contact and returns an * automatically generated technical contact id (NIC Handle) . * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_TECH_CONTACT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aOrganization the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aEmail the attribute value * ©param aTechContactPassword the attribute value * ©param aCity the attribute value * ©param aState the attribute value * ©param aPostalCode the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASΞ_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_CREATE_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ORGANIZATION * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * * ©see NSIWholesaleAPI#ATTR_FAX * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * */ public WSPResponse createTechnicalContact ( String aFirstName, String aLastName, String aOrganization, String aAddressl, String aCountryCode, String aPhone, String aEmail, String aTechContactPassword, String aCity, String aState, String aPostalCode) throws NSIWholesaleException { return createTechnicalContact ( aFirstName, aLastName, aOrganization, aAddressl, aCountryCode , aPhone , aEmail , aTechContactPassword, aCity, aState, aPostalCode, new Properties () , 0); }/** * This method creates a technical contact and returns an * automatically generated technical contact id (NIC Handle) * <BRχPRE> Optional Attribute Key(s) : ATTR_FAX Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_TECH_CONTACT_ID * </PRExBR> * ©param aFirstName the attribute value * ©param aLastName the attribute value * ©param aOrganization the attribute value * ©param aAddressl the attribute value * ©param aCountryCode the attribute value * ©param aPhone the attribute value * ©param aEmail the attribute value * ©param aTechContactPassword the attribute value * ©param aCity the attribute value * ©param aState the attribute value * ©param aPostalCode the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi . wholesale . toolkit . j avaapi . NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_CREATE_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ORGANIZATION * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR POSTAL CODE * ©see NSIWholesaleAPI#ATTR FAX * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR TECH CONTACT ID */ public WSPResponse createTechnicalContact String aFirstName, String aLastName, String aOrganization, String aAddressl, String aCountryCode, String aPhone, String aEmail, String aTechContactPassword, String aCity, String aState, String aPostalCode, Properties optionalAttributes) throws NSIWholesaleException { return createTechnicalContact ( aFirstName, aLastName, aOrganization, aAddressl, aCountryCode , aPhone, aEmail, aTechContactPassword, aCity, aState, aPostalCode, optionalAttributes, 0); } protected WSPResponse createTechnicalContact ( String aFirstName, String aLastName, String aOrganization, String aAddressl, String aCountryCode, String aPhone, String aEmail, String aTechContactPassword, String aCity, String aState, String aPostalCode, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .createTechnicalContact (StringXll, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ,- // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs.put (ATTR_FIRST_NAME, aFirstName); allParmsAndAttrs.put (ATTR_LAST_NAME, aLastName) ; allParmsAndAttrs.put (ATTR_ORGANIZATION, aOrganization) ; allParmsAndAttrs.put (ATTR_ADDRESS1, aAddressl) ; allParmsAndAttrs.pu (ATTR_COUNTRY_CODE, aCountryCode) ; allParmsAndAttrs.put (ATTR_PHONE, aPhone); allParmsAndAttrs.put (ATTR_EMAIL, aEmail) ; allParmsAndAttrs .put (ATTR_TECH_CONTACT_PASSWORD, aTechContactPassword) ; allParmsAndAttrs.put (ATTR_CITY, aCity) ; allParmsAndAttrs.put (ATTR_STATE, aState); allParmsAndAttrs.put (ATTR_POSTAL_CODE, aPostalCode) ; returnCode = conn. makeRequest (COMBO_CREATE_TECHNICAL_CONTACT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System . err . println (methodName + "Caught ResourceException" + re ) ; } finally { return createTechnicalContact ( aFirstName, aLastName, aOrganization, aAddressl, aCountryCode, aPhone , aEmail, aTechContactPassword, aCity, aState, aPostalCode, optionalAttributes, count + 1) ; } } /** * This method registers a new domain product for an existing * customer account. This request assumes that the domain * name will be hosted by some organization other than * Network Solutions. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_ISP_PASSWORD * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param aDomainName the attribute value * ©param aHostNamel the attribute value * ©param aHostAddrl the attribute value * ©param aHostName2 the attribute value * ©param aHostAddr2 the attribute value * ©param aTechContactld the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_CREATE_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_NAMEl * ©see NSIWholesaleAPI#ATTR_HOST_ADDRl * ©see NSIWholesaleAPI#ATTR HOST NAME2 * ©see NSIWholesaleAPI#ATTR_HOST_ADDR2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_ISP_PASSWORD */ public WSPResponse createDomain ( String pCustomerAccountld, String pCustomerPassword, String aDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2, String aTechContactld ) throws NSIWholesaleException { return createDomain ( pCustomerAccountld, pCustomerPassword, aDomainName , aHostNamel, aHostAddrl, aHostName2, aHostAddr2, aTechContactld, new Properties () , 0); } /** * This method registers a new domain product for an existing * customer account. This request assumes that the domain * name will be hosted by some organization other than * Network Solutions. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_ISP_PASSWORD * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param aDomainName the attribute value * ©param aHostNamel the attribute value * ©param aHostAddrl the attribute value * ©param aHostName2 the attribute value * ©param aHostAddr2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_CREATE_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_NAMEl * ©see NSIWholesaleAPI#ATTR_HOST_ADDRl * ©see NSIWholesaleAPI#ATTR_H0ST_NAME2 * ©see NSIWholesaleAPI#ATTR_HOST_ADDR2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_ISP_PASSWORD * */ public WSPResponse createDomain ( String pCustomerAccountld, String pCustomerPassword, String aDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2, String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return createDomain ( pCustomerAccountld, pCustomerPassword, aDomainName, aHostNamel, aHostAddrl, aHostName , aHostAddr2 , aTechContactld, optionalAttributes , o ) ; } protected WSPResponse createDomain ( String pCustomerAccountld, String pCustomerPassword, String aDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2, String aTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { int re; String methodName = className + " .createDomain (StringX8 , Properties, int) "; System. out .println ( "*** Made it into createDomain..."); if (count > retry) { re = refundCard (pCustomerAccountld, aDomainName, CreateDomainPrice, CreateDomainWNRP, optionalAttributes) ; throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; // Double check to see if the domain really is available (to minimize charges) // with immediate credits try { System. out .println ( "***Attempting to verify domain is available."); WSPResponse wspResponse = verifyDomainName ( aDomainName); if (wspResponse. getMaj orResultCode () == WSPResponse . COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED) { // See if credit card information is available, if so get transaction System. out .println( "*** Begining to do Charge Card Validation. ") ; re = ChargeCard (pCustomerAccountld, aDomainName, CreateDomainPrice, CreateDomainWNRP, optionalAttributes) ; if (re != 0) { // Bad credit card. Return bad code, throw new NSIWholesaleException (methodName + "Credit card declined for:" + aDomainName) ; } } else { // Domain name not available. Return bad code. throw new NSIWholesaleException (methodName + "Domain name not available: "+ aDomainName) ; } } catch (NSIWholesaleException e) { throw new NSIWholesaleException ("Domain name previously taken:" + aDomainName); } // All o.k. create the domain. System. out .println ( "*** After the credit card interaction, going on to create a name . " ) ; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs.put (ATTR_DOMAIN_NAME, aDomainName) ; allParmsAndAttrs.put (ATTR_HOST_NAMEl, aHostNamel) , ■ allParmsAndAttrs.put (ATTR_H0ST_ADDR1 , aHostAddrl) allParmsAndAttrs . put (ATTR_H0ST_NAME2 , aHostName2 ) allParmsAndAttrs.put (ATTR_H0ST_ADDR2, aHostAddr2) allParmsAndAttrs .put (ATTR_TECH_CONTACT_ID, aTechContactld) ; returnCode = conn. makeRequest (COMBO_CREATE_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode ; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return createDomain ( pCustomerAccountld, pCustomerPassword, aDomainName , aHostNamel, aHostAddrl, aHostName2 , aHostAddr2, aTechContactld, optionalAttributes, count + 1) ; } } } /** * This method registers a new domain product for an existing * customer account. This request assumes that the domain * name will be hosted by some organization other than * Network Solutions. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_ISP_PASSWORD * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param aDomainName the attribute value * ©param aHostldl the attribute value * ©param aHostId2 the attribute value * ©param aTechContactld the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_CREATE_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_IDl * ©see NSIWholesaleAPI#ATTR_HOST_ID2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_ISP_PASSWORD * */ public WSPResponse createDomain ( String pCustomerAccountld, String pCustomerPassword, String aDomainName, String aHostldl, String aHostId2, String aTechContactld ) throws NSIWholesaleException { return createDomain ( pCustomerAccountld, pCustomerPassword, aDomainName, aHostldl, aHostId2, aTechContactld, new Properties () , 0) ; }/** * This method registers a new domain product for an existing * customer account. This request assumes that the domain * name will be hosted by some organization other than * Network Solutions. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_ISP_PASSWORD * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param aDomainName the attribute value * ©param aHostldl the attribute value 5 * ©param aHostId2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when 10 unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_CREATE_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID 15 * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_DOMAIN_NAME * ©see NSIWhoiesaleAPI#ATTR_HOST_IDl * ©see NSIWholesaleAPI#ATTR_HOST_ID2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID -20 * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see 25 WSPResponse#COMMAND_EXECUTI0N_SUCCEEDED_PR0PERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_ISP_PASSWORD * */ public WSPResponse createDomain ( 30 String pCustomerAccountld, String pCustomerPassword, String aDomainName, String aHostldl, String aHostId2, 35 String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return createDomain ( pCustomerAccountld, 40 pCustomerPassword, aDomainName, aHostldl, aHostId2, aTechContactld, 45 optionalAttributes, 0); } protected WSPResponse createDomain ( String pCustomerAccountld, 50 String pCustomerPassword, String aDomainName, String aHostldl, String aHostId2, String aTechContactld, 55 Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". createDomain (StringXβ , Properties, int) " ,- if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs.put (ATTR_DOMAIN_NAME, aDomainName) ; allParmsAndAttrs.put (ATTR_H0ST_ID1, aHostldl) ; allParmsAndAttrs.put (ATTR_HOST_ID2, aHostId2) ; allParmsAndAttrs .put (ATTR_TECH_CONTACT_ID, aTechContactld) returnCode = conn. makeRequest (COMBO_CREATE_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" 4- re) ; } finally { return createDomain ( pCustomerAccountld, pCustomerPassword, aDomainName , aHostldl, aHostId2, aTechContactld, optionalAttributes , count + 1) ; } } } /* * * This method registers a DNS Hosting product for an existing * customer account . * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DNS_HOSTING_CREATED ATTR_ISP_PASSWORD * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param aDomainName the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_DNS_HOSTING * ©see NSIWholesaleAPI#COMBO_CREATE_DNS_HOSTING * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_DOMAIN_NAME * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_DNS_HOSTING_CREATED * ©see NSIWholesaleAPI#ATTR_ISP_PASSWORD * */ public WSPResponse createDnsHosting ( String pCustomerAccountld, String pCustomerPassword, String aDomainName) throws NSIWholesaleException { return createDnsHosting ( pCustomerAccountld, pCustomerPassword, aDomainName, new Properties () , 0) ; } ** * This method registers a DNS Hosting product for an existing * customer account . * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DNS_HOSTING_CREATED ATTR_ISP_PASSWORD * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param aDomainName the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_CREATE * ©see NSIWholesaleAPI#CLASS_DNS_HOSTING * ©see NSIWholesaleAPI#COMBO_CREATE_DNS_HOSTING * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSI holesaleAPI#ATTR_DOMAIN_NAME * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_DNS_HOSTING_CREATED * ©see NSIWholesaleAPI#ATTR_ISP_PASSWORD * */ public WSPResponse createDnsHosting ( String pCustomerAccountld, String pCustomerPassword, String aDomainName, Properties optionalAttributes) throws NSIWholesaleException { return createDnsHosting ( pCustomerAccountld, pCustomerPassword, aDomainName, optionalAttributes, 0); } protected WSPResponse createDnsHosting ( String pCustomerAccountld, String pCustomerPassword, String aDomainName, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". createDnsHosting (String, String, String, Properties, int) "; if (count > retry) { re = refundCard (pCustomerAccountld, aDomainName, CreateDnsHostPrice, CreateDnsHostWNRP, optionalAttributes) ; throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; // Double check to see if the domain really is available (to minimize charges) // with immediate credits try { System. out .println ("***Attempting to verify domain for DNS Hosting. " ) ; WSPResponse wspResponse = verifyDomainName ( aDomainName); if (wspResponse. getMaj orResultCode () == WSPResponse . COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED) { // See if credit card information is available, if so get transaction System. out .println( "*** Begining to do Charge Card Validation. ") ; re = ChargeCard (pCustomerAccountld, aDomainName, CreateDomainPrice, CreateDomainWNRP, optionalAttributes) ; . if (re != 0) { // Bad credit card. Return bad code, throw new NSIWholesaleException (methodName + "Credit card declined for: " + aDomainName) ; } } else { // Domain name not available. Return bad code, throw new NSIWholesaleException (methodName + "Domain name not available: "+ aDomainName) ; } } catch (NSIWholesaleException e) { throw new NSIWholesaleException ( "Domain name previously taken:" + aDomainName); } try { conn = (NSIWholesaleConnection) pool . checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs.put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs.put (ATTR_DOMAIN_NAME, aDomainName) ; returnCode = conn. makeRequest (COMBO_CREATE_DNS_HOSTING, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System, err .println (methodName + "Caught ResourceException" + re) ; } finally { return createDnsHosting ( pCustomerAccountld, pCustomerPassword, aDomainName, optionalAttributes , count + 1) ; /** * This method allows a customer to modify one or more attributes * associated with a specific instance of a Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©param aHostNamel the attribute value * ©param aHostAddrl the attribute value * ©param aHostName2 the attribute value * ©param aHostAddr2 the attribute value * ©param aTechContactld the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NΞIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_NAMEl * ©see NSIWholesaleAPI#ATTR_HOST_ADDRl * ©see NSIWholesaleAPI#ATTR_HOST_NAME2 * ©see NSIWholesaleAPI#ATTR_HOST_ADDR2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2, String aTechContactld ) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pCustomerPassword, pDomainName , aHostNamel, aHostAddrl, aHostName2, aHostAddr2, aTechContactld, new Properties () , 0); } /** * This method allows a customer to modify one or more attributes * associated with a specific instance of a Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©param aHostNamel the attribute value * ©param aHostAddrl the attribute value * ©param aHostName2 the attribute value * ©param aHostAddr2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_NAMEl * ©see NSIWholesaleAPI#ATTR_HOST_ADDRl * ©see NSIWholesaleAPI#ATTR_HOST_NAME2 * ©see NSIWholesaleAPI#ATTR_HOST_ADDR2 * ©see NSIWholesaleAPI#ATTR TECH CONTACT ID * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2 , String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pCustomerPassword, pDomainName, aHostNamel, aHostAddrl, aHostName2 , aHostAddr2 , aTechContactld, optionalAttributes , 0); } protected WSPResponse modifyDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, String aHostNamel, String aHostAddrl, String aHostName2 , String aHostAddr2, String aTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyDomain (StringXS, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName) ; allParmsAndAttrs .put (ATTR_H0ST_NAME1 , aHostNamel) allParmsAndAttrs .put (ATTR_H0ST_ADDR1 , aHostAddrl) allParmsAndAttrs.put (ATTR_HOST_NAME2, aHostName2) allParmsAndAttrs .put (ATTR_H0ST_ADDR , aHostAddr2) allParmsAndAttrs .put (ATTR_TECH_CONTACT_ID, aTechContactld) ; returnCode = conn. makeRequest (COMBO_MODIFY_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return modifyDomain ( pCustomerAccountld, pCustomerPassword, pDomainName, aHostNamel, aHostAddrl, aHostName2, aHostAddr2, aTechContactld, optionalAttributes , count + 1) ; } } } * * * This method allows a customer to modify one or more attributes * associated with a specific instance of a Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©param aHostldl the attribute value * ©param aHostId2 the attribute value * ©param aTechContactld the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_IDl * ©see NSIWholesaleAPI#ATTR_HOST_ID2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, String aHostldl, String aHostId2, String aTechContactld ) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountId, pCustomerPassword, pDomainName, aHostldl, aHostId2, aTechContactld, new Properties () , 0); } ** * This method allows a customer to modify one or more attributes * associated with a specific instance of a Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Maj or Result Code : COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©param aHostldl the attribute value * ©param aHostId2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_IDl * ©see NSIWholesaleAPI#ATTR_HOST_ID2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * / public WSPResponse modifyDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, String aHostldl, String aHostId2, String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pCustomerPassword, pDomainName, aHostldl, aHostId2, aTechContactld, optionalAttributes, 0); } protected WSPResponse modifyDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, String aHostldl, String aHostId2, String aTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyDomain (StringX6, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool . checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs .put (PARM_DOMAIN_NAME, pDomainName) ; allParmsAndAttrs.put (ATTR_H0ST_ID1, aHostldl) ; allParmsAndAttrs.put ' (ATTR_HOST_ID2, aHostId2) ; allParmsAndAttrs .put (ATTR_TECH_CONTACT_ID, aTechContactld) ; returnCode = conn.makeRequest (COMBO_MODIFY_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ,• } finally { return modifyDomain( pCustomerAccountld, pCustomerPassword, pDomainName, aHostldl, aHostId2, aTechContactld, optionalAttributes , count + 1) ; } } } /** * This method allows a technical contact of a customer's domain * product to modify one or more attributes * associated with that specific instance of the Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>N0TE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param pDomainName the parameter value * ©param aHostNamel the attribute value * ©param aHostAddrl the attribute value * ©param aHostName2 the attribute value * ©param aHostAddr2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSI holesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_lD * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_NAMEl * ©see NSIWholesaleAPI#ATTR_HOST_ADDRl * ©see NSIWholesaleAPI#ATTR_HOST_NAME2 * ©see NSIWholesaleAPI#ATTR_HOST_ADDR2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESΞ_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2, String aTechContactld ) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName , aHostNamel, aHostAddrl, aHostName2 , aHostAddr2 , aTechContactld, new Properties () , 0); }/** * This method allows a technical contact of a customer's domain * product to modify one or more attributes * associated with that specific instance of the Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Maj or Result Code : COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * < /PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param pDomainName the parameter value * ©param aHostNamel the attribute value * ©param aHostAddrl the attribute value * ©param aHostName2 the attribute value * ©param aHostAddr2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_NAMEl * ©see NSIWholesaleAPI#ATTR_HOST_ADDRl * ©see NSIWholesaleAPI#ATTR_HOST_NAME2 * ©see NSIWholesaleAPI#ATTR_HOST_ADDR2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2 , String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName, aHostNamel, aHostAddrl , aHostName2 , aHostAddr2 , aTechContactld, optionalAttributes, 0) ; } protected WSPResponse modifyDomain ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, String aHostNamel, String aHostAddrl, String aHostName2, String aHostAddr2 , String aTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyDomain (StringX9, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_ID, pTechContactld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_PASSWORD, pTechContactPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName); allParmsAndAttrs.put (ATTR_HOST_NAMEl, aHostNamel) allParmsAndAttrs . put (ATTR_H0ST_ADDR1 , aHostAddrl ) allParmsAndAttrs . put (ATTR_HOST_NAME2 , aHostName2 ) allParmsAndAttrs .put (ATTR_HOST_ADDR2 , aHostAddr2) allParmsAndAttrs.put (ATTR_TECH_CONTACT_ID, aTechContactld); returnCode = conn. makeRequest (COMBO_MODIFY_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool. release (conn) ; } catch (ResourceException re) { System. err .printl (methodName + "Caught ResourceException" + re) ; } finally { return modifyDomain ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName, aHostName1 , aHostAddrl, aHostName2 , aHostAddr2 , aTechContactld, optionalAttributes, count + 1) ; } } } /** * This method allows a technical contact of a customer's domain * product to modify one or more attributes * associated with that specific instance of the Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Maj or Result Code : COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param pDomainName the parameter value * ©param aHostldl the attribute value * ©param aHostId2 the attribute value * ©param aTechContactld the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_IDl * ©see NSIWholesaleAPI#ATTR_H0ST_ID2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, String aHostldl, String aHostId2, String aTechContactld ) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName , aHostldl, aHostId2, aTechContactld, new Properties () , 0); } /** * This method allows a technical contact of a customer's domain * product to modify one or more attributes * associated with that specific instance of the Domain product * registered to that customer. * This method will also convert a DNS Hosting product domain * into a standard domain. * <BR>NOTE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Maj or Result Code : COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param pDomainName the parameter value * ©param aHostldl the attribute value * ©param aHostId2 the attribute value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * ©see NSIWhθlesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_HOST_IDl * ©see NSIWholesaleAPI#ATTR_HOST_ID2 * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_FAILED_UNKNOWN_ERROR * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse modifyDomain ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, String aHostldl, String aHostId2, String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName , aHostldl, aHostId2, aTechContactld, optionalAttributes , 0); } protected WSPResponse modifyDomain ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, String aHostldl, String aHostId2, String aTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyDomain (StringX7, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_ID, pTechContactld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_PASSWORD, pTechContactPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName) ; allParmsAndAttrs . put (ATTR_H0ST_ID1 , aHostldl ) ; allParmsAndAttrs . put (ATTR_HOST_ID2 , aHostId2 ) ; allParmsAndAttrs.put (ATTR_TECH_CONTACT_ID, aTechContactld); returnCode = conn. makeRequest (COMBO_MODIFY_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return modifyDomain ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName, aHostldl, aHostId2, aTechContactld, optionalAttributes , count + 1) ,- ** * This method allows an Internet Service Provider (ISP) * to modify the Technical Contact Id of a specific domain product. * <BR>N0TE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param plspPassword the parameter value * ©param pDomainName the parameter value * ©param aTechContactld the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY ©see NSIWholesaleAPI#CLASS_DOMAIN ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID ©see NSIWholesaleAPI#PARM_ISP_PASSWORD ©see NSIWholesaleAPI#PARM_DOMAIN_NAME ©see NSIWholesaleAPI#ATTR TECH CONTACT ID ©see WSPResponse#INVALID_VALUE ©see WSPResponse#GENERAL_ACCESS_DENIED ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED */ public WSPResponse modifyDomain ( String pCustomerAccountld, String plspPassword, String pDomainName, String aTechContactld ) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, plspPassword, pDomainName , aTechContactld, new Properties () , 0) ; } / * * * This method allows an Internet Service Provider (ISP) * to modify the Technical Contact Id of a specific domain product. * <BR>N0TE: This command is asynchronous. Receipt of the * COMMAND_EXECUTION_SUCCEEDED_PR0PERTIES_BEING_RETURNED code * indicates that the command has been successfully queued. * <BRxPRE> Expected Maj or Result Code : COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * < / PRExBR> * ©param pCustomerAccountld the parameter value * ©param plspPassword the parameter value * ©param pDomainName the parameter value * ©param aTechContactld the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi.wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_MODIFY_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_ISP_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * ©see NSIWholesaleAPI#ATTR_TECH_CONTACT_ID * * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED */ public WSPResponse modifyDomain ( String pCustomerAccountld, String plspPassword, String pDomainName, String aTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return modifyDomain ( pCustomerAccountld, plspPassword, pDomainName, aTechContactld, optionalAttributes , 0); } protected WSPResponse modifyDomain ( String pCustomerAccountld, String plspPassword, String pDomainName, String aTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyDomain (StringX4, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs.put (PARM_ISP_PASSWORD, plspPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName) ; allParmsAndAttrs .put (ATTR_TECH_CONTACT_ID, aTechContactld) ; returnCode = conn. makeRequest (COMBO_MODIFY_DOMAIN, allParmsAndAttrs) ; pool .checkln(conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" 4- re) ; } finally { return modifyDomain ( pCustomerAccountld, plspPassword, pDomainName, aTechContactld, optionalAttributes , count + 1) ; } } } /** * This method is used to modify one or more attributes * of an existing individual customer account. * <BRxPRE> Expected Major Result Code: C0MMAND_EXECUTION_SUCCEEDED_N0_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND MODIFY * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_MODIFY_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NΞIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NΞIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifylndividualAccount ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return modifylndividualAccount ( pCustomerAccountld, pCustomerPassword, new Properties () , 0) ; } * * * This method is used to modify one or more attributes * of an existing individual customer account. * <BRxPRE> Optional Attribute Key(s): ATTR_CUSTOMER_PASSWORD ATTR_FIRST_NAME ATTR_LAST_NAME ATTR_ADDRESS1 ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE ATTR_PHONE ATTR FAX ATTR_EMAIL ATTR_AUTH_QUESTION ATTR_AUTH_ANSWER Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_MODIFY_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifylndividualAccount ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return modifylndividualAccount ( pCustomerAccountId, pCustomerPassword, optionalAttributes , 0); } protected WSPResponse modifylndividualAccount ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifylndividualAccount (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkou () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs . put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs . put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn. makeRequest (COMBO_MODIFY_INDIVIDUAL_ACCOUNT, allParmsAndAttrs) ; pool .checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return modifylndividualAccount ( pCustomerAccountId, pCustomerPassword, optionalAttributes, count + 1) ; } } } /** * This method is used to modify one or more attributes * of an existing business (organization) customer account. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_MODIFY_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * * ©see NSIWhθlesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_COMPANY_NAME * ©see NSIWholesaleAPI#ATTR_COMPANY_TYPE * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_LAST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESSl * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_LEGAL_C0NTACT_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_CITY * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_STATE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_PHONE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifyBusinessAccount ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return modifyBusinessAccount ( pCustomerAccountld, pCustomerPassword, new Properties () , 0) ; } /** * This method is used to modify one or more attributes * of an existing business (organization) customer account . * <BRxPRE> Optional Attribute Key(s) : ATTR_CUSTOMER_PASSWORD ATTR_COMPANY_NAME ATTR_COMPANY_TYPE ATTR_ADDRESS1 ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE ATTR_PHONE ATTR_FAX ATTR_EMAIL ATTR_AUTH_QUESTION ATTR_AUTH_ANSWER ATTR_LEGAL_CONTACT_FIRST_NAME ATTR_LEGAL_CONTACT_LAST_NAME ATTR_LEGAL_C0NTACT_ADDRESS1 ATTR_LEGAL_CONTACT_ADDRESS2 ATTR_LEGAL_CONTACT_ADDRESS3 ATTR_LEGAL_CONTACT_ADDRESS4 ATTR_LEGAL_CONTACT_ADDRESS5 ATTR_LEGAL_CONTACT_CITY ATTR_LEGAL_CONTACT_STATE ATTR_LEGAL_CONTACT_POSTAL_CODE ATTR_LEGAL_CONTACT_COUNTRY_CODE ATTR_LEGAL_CONTACT_PHONE ATTR_LEGAL_CONTACT_FAX ATTR_LEGAL_CONTACT_EMAIL Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_MODIFY_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#ATTR_COMPANY_NAME * ©see NSIWholesaleAPI#ATTR_COMPANY_TYPE * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_ADDRESS3 * ©see NSIWholesaleAPI#ATTR ADDRESS4 * ©see NSIWholesaleAPI#ATTR_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_EMAIL * ©see NSIWholesaleAPI#ATTR_AUTH_QUESTION * ©see NSIWholesaleAPI#ATTR_AUTH_ANSWER * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_LAST_NAME * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESSl * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS2 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS3 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS4 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_ADDRESS5 * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_CITY * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_STATE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_PHONE * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see NSIWholesaleAPI#ATTR_LEGAL_CONTACT_FAX * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifyBusinessAccoun ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return modifyBusinessAccount ( pCustomerAccountld, pCustomerPassword, optionalAttributes , 0); } protected WSPResponse modifyBusinessAccount ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyBusinessAccount (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool . checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn. makeRequest (COMBO_MODIFY_BUSINESS_ACCOUNT, allParmsAndAttrs) ; pool .checkln(conn) • return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return modifyBusinessAccount ( pCustomerAccountld, pCustomerPassword, optionalAttributes , count + 1) ,- } } } ** * This method is used to modify one or more attributes * of an existing technical contact. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_ TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_MODIFY_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ORGANIZATION * ©see NSIWholesaleAPI#ATTR_ADDRESSl * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPIttATTR STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSIWholesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_EMAIL * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED */ public WSPResponse modifyTechnicalContact ( String pTechContactld, String pTechContactPassword) throws NSIWholesaleException { return modifyTechnicalContact ( pTechContactld, pTechContactPassword, new Properties () , 0 ) ,- } /** * This method is used to modify one or more attributes * of an existing technical contact. * <BRχPRE> Optional Attribute Key(s) : ATTR_FIRST_NAME ATTR_LAST_NAME ATTRJORGANIZATION ATTR_ADDRESS1 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE ATTR_EMAIL ATTR_FAX ATTR_PHONE Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_MODIFY_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * * ©see NSIWholesaleAPI#ATTR_FIRST_NAME * ©see NSIWholesaleAPI#ATTR_LAST_NAME * ©see NSIWholesaleAPI#ATTR_ORGANIZATION * ©see NSIWholesaleAPI#ATTR ADDRESS1 * ©see NSIWholesaleAPI#ATTR_CITY * ©see NSIWholesaleAPI#ATTR_STATE * ©see NSIWholesaleAPI#ATTR_POSTAL_CODE * ©see NSIWholesaleAPI#ATTR_COUNTRY_CODE * ©see NSIWholesaleAPI#ATTR_PHONE * ©see NSI holesaleAPI#ATTR_FAX * ©see NSIWholesaleAPI#ATTR_EMAIL * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#INVALID_VALUE * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifyTechnicalContact ( String pTechContactld, String pTechContactPassword, Properties optionalAttributes) throws NSIWholesaleException { return modifyTechnicalContact ( pTechContactld, pTechContactPassword, optionalAttributes , 0); } protected WSPResponse modifyTechnicalContact ( String pTechContactld, String pTechContactPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyTechnicalContact (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null ; WSPResponse returnCode ; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs.pu (PARM_TECH_CONTACT_ID, pTechContactld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_PASSWORD, pTechContactPassword) ; returnCode = conn.makeRequest (COMBO_MODIFY_TECHNICAL_CONTACT, allParmsAndAttrs) ; pool .checkln(conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return modifyTechnicalContact ( pTechContactld, pTechContactPassword, optionalAttributes, count + 1) ; } } } /* * * This method is used to modify/reset a customer's account password. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param aCustomerPassword the attribute value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_PASSWORD * ©see NSIWhθlesaleAPI#COMBO_MODIFY_PAΞSWORD * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifyPassword( String pCustomerAccountld, String aCustomerPassword) throws NSIWholesaleException { return modifyPassword( pCustomerAccountld, aCustomerPassword, new Properties () , 0) ; }/ ** * This method is used to modify/reset a customer's account password. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param aCustomerPassword the attribute value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_MODIFY * ©see NSIWholesaleAPI#CLASS_PASSWORD * ©see NSIWholesaleAPI#COMBO_MODIFY_PASSWORD * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#ATTR_CUSTOMER_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * */ public WSPResponse modifyPassword ( String pCustomerAccountld, String aCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return modifyPassword ( pCustomerAccountld, aCustomerPassword, optionalAttributes , 0); } protected WSPResponse modifyPassword ( String pCustomerAccountld, String aCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .modifyPassword (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool . checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ,- allParmsAndAttrs .put (ATTR_CUSTOMER_PASSWORD, aCustomerPassword) ; returnCode = conn. makeRequest (COMBO_MODIFY_PASSWORD, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return modifyPassword ( pCustomerAccountld, aCustomerPassword, optionalAttributes, count + 1) ; } } } ** * This method is used to generate a list of available * domain names based on a specified list of keywords. * <BRχPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNameO : DomainNamel : DomainName2 ; DomainName3 : ...etc... * </PRExBR> * ©param pKeyWords the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_GENERATE * ©see NSIWholesaleAPI#CLASS_DOMAIN_NAME * ©see NSIWholesaleAPI#COMBO_GENERATE_DOMAIN_NAME * ©see NSIWholesaleAPI#PARM_KEY_WORDS * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED */ public WSPResponse generateDomainName ( String pKeyWords) throws NSIWholesaleException { return generateDomainName ( pKeyWords , new Properties () , 0); } ** * This method is used to generate a list of available * domain names based on a specified list of keywords. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNameO : DomainNamel : DomainName 2 : DomainName 3 : . . . etc . . . * </PRExBR> * ©param pKeyWords the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_GENERATE * ©see NSIWholesaleAPI#CLASS_DOMAIN_NAME * ©see NSIWholesaleAPI#COMBO_GENERATE_DOMAIN_NAME * ©see NSIWholesaleAPI#PARM_KEY_WORDS * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED */ public WSPResponse generateDomainName ( String pKeyWords, Properties optionalAttributes) throws NSIWholesaleException { return generateDomainName ( pKeyWords , optionalAttributes , 0); } protected WSPResponse generateDomainNam ( String pKeyWords, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .generateDomainName (String, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs.put (PARM_KEY_WORDS, pKeyWords) ; returnCode = conn. makeRequest (COMBO_GENERATE_DOMAIN_NAME, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) , ■ } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return generateDomainName ( pKeyWords , optionalAttributes , count + 1) ; } } } /** * Retrieves a list of all domain products owned by customer. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 : DomainName3 : ...etc ... * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED */ public WSPResponse lookupDomain ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return lookupDomain ( pCustomerAccountld, pCustomerPassword, new Properties () , 0); } * Retrieves a list of all domain products owned by customer . * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 : DomainName3 : ...etc ... * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupDomain ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return lookupDomain ( pCustomerAccountld, pCustomerPassword, optionalAttributes , 0); } protected WSPResponse lookupDomain ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupDomain (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool. checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn. makeRequest (COMBO_LOOKUP_DOMAIN, allParmsAndAttrs) ,- pool. checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err. println (methodName + "Caught ResourceException" + re) ; } finally { return lookupDomain ( pCustomerAccountld, pCustomerPassword, optionalAttributes , count + 1) ; } } } ** * Retrieves detail information about a specific domain product * registered to a customer. This form of the lookup domain * command will also retrieve the status of the domain while * it is being processed or after it has failed. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DOMAIN_NAME ATTR_TECH_CONTACT_ID ATTR_HOST_NAME1 ATTR_H0ST_ADDR1 ATTR_H0ST_ID1 ATTR_H0ST_NAME2 ATTR_H0ST_ADDR2 ATTR_H0ST_ID2 * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse lookupDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName) throws NSIWholesaleException { return lookupDomain ( pCustomerAccountld, pCustomerPassword, pDomainName , new Properties () , 0); } ** * Retrieves detail information about a specific domain product * registered to a customer. This form of the lookup domain * command will also retrieve the status of the domain while * it is being processed or after it has failed. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DOMAIN_NAME ATTR_TECH_CONTACT_ID ATTR_HOST_NAME1 ATTR_H0ST_ADDR1 ATTR_H0ST_ID1 ATTR_HOST_NAME2 ATTR_HOST_ADDR2 ATTR_H0ST_ID2 * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM DOMAIN NAME * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse lookupDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, Properties optionalAttributes) throws NSIWholesaleException { return lookupDomain ( pCustomerAccountld, pCustomerPassword, pDomainName, optionalAttributes , 0); } protected WSPResponse lookupDomain ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupDomain (String, String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool . checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName) ; returnCode = conn. makeRequest (COMBO_LOOKUP_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err.println (methodName + "Caught ResourceException" + re) ; } finally { return lookupDomain ( pCustomerAccountId, pCustomerPassword, pDomainName, optionalAttributes, count + 1) ; } } } ** * Retrieves a list of the customer's domain products * for which the technical contact id is the technical contact. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 : DomainName3 : ...etc... * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupDomainByTechContact ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword) throws NSIWholesaleException { return lookupDomainByTechContact ( pCustomerAccountld, pTechContactld, pTechContactPassword, new Properties () , 0 ) ; } ** * Retrieves a list of the customer's domain products * for which the technical contact id is the technical contact. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainName1 : DomainName2 : DomainName3 : ...etc... * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#C0MMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupDomainByTechContact ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, Properties optionalAttributes) throws NSIWholesaleException { return lookupDomainByTechContact ( pCustomerAccountld, pTechContactld, pTechContactPassword, optionalAttributes, 0) ; } protected WSPResponse lookupDomainByTechContact ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupDomainByTechContact (String, String, String, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAtcrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_ID, pTechContactld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_PASSWORD, pTechContactPassword) ; returnCode = conn.makeRequest (COMBO_LOOKUP_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode ; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err.println (methodName + "Caught ResourceException" 4- re) ; } finally { return lookupDomainByTechContact ( pCustomerAccountId, pTechContactld, pTechContactPassword, optionalAttributes, count + 1) ,- } } /** * Retrieves details of a specific domain product owned by customer, * for which the technical contact id is the technical contact for * the specific product. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DOMAIN_NAME ATTR_TECH_CONTACT_ID ATTR_HOST_NAME1 ATTR_H0ST_ADDR1 ATTR_H0ST_ID1 ATTR HOST NAME2 ATTR_HOST_ADDR2 ATTR_HOST_ID2 * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param pDomainName the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse lookupDomainByTechContact ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName) throws NSIWholesaleException { return lookupDomainByTechContact ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName, new Properties () , 0); } /** * Retrieves details of a specific domain product owned by customer, * for which the technical contact id is the technical contact for * the specific product. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DOMAIN_NAME ATTR_TECH_CONTACT_ID ATTR_H0ST_NAME1 ATTR_H0ST_ADDR1 ATTR_H0ST_ID1 ATTR_HOST_NAME2 ATTR_HOST_ADDR2 ATTR_H0ST_ID2 * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pTechContactld the parameter value * ©param pTechContactPassword the parameter value * ©param pDomainName the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DOMAIN * ©see NSIWholesaleAPI#COMBO_LOOKUP_DOMAIN * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse lookupDomainByTechContact ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, Properties optionalAttributes) throws NSIWholesaleException { return lookupDomainByTechContact ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName, optionalAttributes, 0) ; } protected WSPResponse lookupDomainByTechContact ( String pCustomerAccountld, String pTechContactld, String pTechContactPassword, String pDomainName, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupDomainByTechContact (StringX4, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ,• allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs.put (PARM_TECH_CONTACT_ID, pTechContactld) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_PASSWORD, pTechContactPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName) ; returnCode = conn.makeRequest (COMBO_LOOKUP_DOMAIN, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err. println (methodName + "Caught ResourceException" + re) ,- } finally { return lookupDomainByTechContact ( pCustomerAccountld, pTechContactld, pTechContactPassword, pDomainName , optionalAttributes , count + 1) ; } } } /** * Retrieves a list of all domain names associated with * DNS Hosting products owned by customer. * <BR><PRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 : DomainName3 : ...etc... * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolki . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DNS_HOSTING * ©see NSIWholesaleAPI#COMBO_LOOKUP_DNS_HOSTING * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM CUSTOMER PASSWORD * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupDnsHosting ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return lookupDnsHosting ( pCustomerAccountld, pCustomerPassword, new Properties () , 0); } ** * Retrieves a list of all domain names associated with * DNS Hosting products owned by customer. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: DomainNamel : DomainName2 : DomainName3 : ...etc... * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSI holesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DNS_HOSTING * ©see NSIWholesaleAPI#COMBO_LOOKUP_DNS_HOSTING * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED */ public WSPResponse lookupDnsHosting ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return lookupDnsHosting ( pCustomerAccountld, pCustomerPassword, optionalAttributes, 0); } protected WSPResponse lookupDnsHosting ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupDnsHosting (String, String, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null ; WSPResponse returnCode ; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn. makeRequest (COMBO_LOOKUP_DNS_HOSTING, allParmsAndAttrs) ; pool .checkln (conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err. printIn (methodName + "Caught ResourceException" + re) ; } finally { return lookupDnsHosting ( pCustomerAccountld, pCustomerPassword, optionalAttributes , count + 1) ; } } } /** * Retrieves details of a specific * DNS Hosting product owned by customer. * Used to verify a domain name is part of a DNS Hosting Product * <BRχPRE> Expected Major Result Code: COMMAND EXECUTION SUCCEEDED PROPERTIES BEING RETURNED Expected Result Property Key(s) Returned: ATTR_DOMAIN_NAME * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DNS_HOSTING * ©see NSIWholesaleAPI#COMBO_LOOKUP_DNS_HOSTING * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT__ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse lookupDnsHosting ( String pCustomerAccountld, String pCustomerPassword, String pDomainName) throws NSIWholesaleException { return lookupDnsHosting ( pCustomerAccountld, pCustomerPassword, pDomainName , new Properties () , 0); } /** * Retrieves details of a specific * DNS Hosting product owned by customer. * Used to verify a domain name is part of a DNS Hosting Product * <BRxPRE> Expected Major Result Code: C0MMAND_EXECUTI0N_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_DOMAIN_NAME * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param pDomainName the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi. wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSI holesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_DNS_HOSTING * ©see NSIWholesaleAPI#COMBO_LOOKUP_DNS_HOSTING * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM CUSTOMER PASSWORD * ©see NSIWholesaleAPI#PARM_DOMAIN_NAME * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#OBJECT_NOT_FOUND * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse lookupDnsHosting ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, Properties optionalAttributes) throws NSIWholesaleException { return lookupDnsHosting ( pCustomerAccountld, pCustomerPassword, pDomainName , optionalAttributes, 0); } protected WSPResponse lookupDnsHosting ( String pCustomerAccountld, String pCustomerPassword, String pDomainName, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupDnsHosting (String, String, String, Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool . checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; allParmsAndAttrs.put (PARM_DOMAIN_NAME, pDomainName); returnCode = conn.makeRequest (COMBO_LOOKUP_DNS_HOSTING, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return lookupDnsHosting ( pCustomerAccountId, pCustomerPassword, pDomainName , optionalAttributes , count + 1) ; } } ** * Retrieves a list of all individual accounts linked to a wholesaler. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: CustomerAccountldl : CustomerAccountId2 : CustomerAccountId3 : ...etc... * </PRExBR> * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolki . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_LOOKUP_INDIVIDUAL_ACCOUNT * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupIndividualAccount ( ) throws NSIWholesaleException { return lookupIndividualAccount ( new Properties () , 0); } /** * Retrieves a list of all individual accounts linked to a wholesaler. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: CustomerAccountldl : CustomerAccountId2 : CustomerAccountId3 : ...etc... * </PRExBR> * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_LOOKUP_INDIVIDUAL_ACCOUNT * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * * / public WSPResponse lookupIndividualAccount ( Properties optionalAttributes ) throws NSIWholesaleException { return lookupIndividualAccount ( optionalAttributes , 0) ; } protected WSPResponse lookupIndividualAccount ( Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupIndividualAccount (Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); returnCode = conn. makeRequest (COMBO_LOOKUP_INDIVIDUAL_ACCOUNT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err.printIn (methodName + "Caught ResourceException" + re) ; } finally { return lookupIndividualAccount ( optionalAttributes , count + 1) ; /** * Retrieves details of a specific individual customer account. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_FIRST_NAME ATTR_LAST_NAME ATTR_PHONE ATTR_AUTH_QUESTION ATTR_AUTH_ANSWER ATTR_FAX ATTR_EMAIL ATTR_ADDRESS1 ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_LOOKUP_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupIndividualAccount ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return lookupIndividualAccount ( pCustomerAccountld, pCustomerPassword, new Properties () , 0); } /** * Retrieves details of a specific individual customer account. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_FIRST_NAME ATTR_LAST_NAME ATTR_PHONE ATTR_AUTH_QUESTION ATTR_AUTH_ANSWER ATTR_FAX ATTR_EMAIL ATTR_ADDRESS1 ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi.NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#COMBO_LOOKUP_INDIVIDUAL_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupIndividualAccount ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return lookupIndividualAccount ( pCustomerAccountld, pCustomerPassword, optionalAttributes , 0); } protected WSPResponse lookupIndividualAccoun ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupIndividualAccoun (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn. makeReques (COMBO_LOOKUP_INDIVIDUAL_ACCOUNT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ,- } catch (ResourceException re) { System. err. println (methodName + "Caught ResourceException" + re) ; } finally { return lookupIndividualAccount ( pCustomerAccountld, pCustomerPassword, optionalAttributes, count + 1) ; } } } ** * Retrieves a list of all business customer accounts linked to wholesaler. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: CustomerAccountldl: CustomerAccountId2 : CustomerAccountId3 : ...etc... * </PRExBR> * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_LOOKUP_BUSINESS_ACCOUNT * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupBusinessAccount () throws NSIWholesaleException { return lookupBusinessAccount ( new Properties () , 0) ; } /** * Retrieves a list of all business customer accounts linked to wholesaler. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: CustomerAccountldl ; CustomerAccountId2 : CustomerAccountId3 : ... etc ... * </PRExBR> * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#C0MBO_L00KUP_BUSINESS_ACC0UNT * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupBusinessAccount ( Properties optionalAttributes) throws NSIWholesaleException { return lookupBusinessAccount ( optionalAttributes, 0) ; } protected WSPResponse lookupBusinessAccount ( Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupBusinessAccount (Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; returnCode = conn.makeRequest (COMBO_LOOKUP_BUSINESS_ACCOUNT, allParmsAndAttrs) ; pool .checkln(conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return lookupBusinessAccount ( optionalAttributes, count + 1) ; } } } /** * Retrieves details of a specific business customer account. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_COMPANY_NAME ATTR_COMPANY_TYPE ATTR_EMAIL ATTR_PHONE ATTR_FAX ATTR_ADDRESS1 ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE ATTR_LEGAL_CONTACT_FIRST_NAME ATTR_LEGAL_CONTACT_LAST_NAME ATTR_LEGAL_CONTACT_PHONE ATTR_LEGAL_CONTACT_FAX ATTR_LEGAL_CONTACT_EMAIL ATTR LEGAL CONTACT CITY ATTR_LEGAL_CONTACT_STATE ATTR_LEGAL_CONTACT_POSTAL_CODE ATTR_LEGAL_CONTACT_COUNTRY_CODE ATTR_LEGAL_CONTACT_ADDRESS1 ATTR_LEGAL_CONTACT_ADDRESS2 ATTR_LEGAL_CONTACT_ADDRESS3 ATTR_LEGAL_CONTACT_ADDRESS4 ATTR_LEGAL_CONTACT_ADDRESS5 * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#COMBO_LOOKUP_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupBusinessAccount ( String pCustomerAccountld, String pCustomerPassword) throws NSIWholesaleException { return lookupBusinessAccount ( pCustomerAccountld, pCustomerPassword, new Properties () , 0); } ** * Retrieves details of a specific business customer account. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_COMPANY_NAME ATTR_COMPANY_TYPE ATTR_EMAIL ATTR_PHONE ATTR_FAX ATTR_ADDRESS1 ATTR_ADDRESS2 ATTR_ADDRESS3 ATTR_ADDRESS4 ATTR_ADDRESS5 ATTR_CITY ATTR_STATE ATTR_POΞTAL_CODE ATTR_COUNTRY_CODE ATTR_LEGAL_CONTACT_FIRST_NAME ATTR LEGAL CONTACT LAST NAME ATTR_LEGAL_CONTACT_PHONE ATTR_LEGAL_CONTACT_FAX ATTR_LEGAL_CONTACT_EMAIL ATTR_LEGAL_CONTACT_CITY ATTR_LEGAL_CONTACT_STATE ATTR_LEGAL_CONTACT_POSTAL_CODE ATTR_LEGAL_CONTACT_COUNTRY_CODE ATTR_LEGAL_CONTACT_ADDRESS1 ATTR_LEGAL_CONTACT_ADDRESS2 ATTR_LEGAL_CONTACT_ADDRESS3 ATTR_LEGAL_CONTACT_ADDRESS4 ATTR_LEGAL_CONTACT_ADDRESS5 * </PRExBR> * ©param pCustomerAccountld the parameter value * ©param pCustomerPassword the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_BUSINESS_ACCOUNT * ©see NSIWholesaleAPi#COMBO_LOOKUP_BUSINESS_ACCOUNT * ©see NSIWholesaleAPI#PARM_CUSTOMER_ACCOUNT_ID * ©see NSIWholesaleAPI#PARM_CUSTOMER_PASSWORD * ©see WSPResponse#GENERAL_ACCESS_DENIED * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupBusinessAccount ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes) throws NSIWholesaleException { return lookupBusinessAccount ( pCustomerAccountld, pCustomerPassword, optionalAttributes , 0) ; } protected WSPResponse lookupBusinessAccount ( String pCustomerAccountld, String pCustomerPassword, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupBusinessAccount (String, String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes); allParmsAndAttrs .put (PARM_CUSTOMER_ACCOUNT_ID, pCustomerAccountld) ; allParmsAndAttrs .put (PARM_CUSTOMER_PASSWORD, pCustomerPassword) ; returnCode = conn. makeRequest (COMBO_LOOKUP_BUSINESS_ACCOUNT, allParmsAndAttrs) ; pool .checkln(conn) ; return returnCode; } catch (Exception e) { try { pool .release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return lookupBusinessAccount ( pCustomerAccountld, pCustomerPassword, optionalAttributes , count + 1) ; } } } /** * Retrieves details of a specific technical contact. * <BRχPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_ORGANIZATION ATTR_PHONE ATTR_FAX ATTR_EMAIL ATTR_ADDRESS1 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE * </PRExBR> * ©param pTechContactld the parameter value * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO LOOKUP TECHNICAL CONTACT * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED */ public WSPResponse lookupTechnicalContact ( String pTechContactld) throws NSIWholesaleException { return lookupTechnicalContact ( pTechContactld, new Properties () , 0) ; } /** * Retrieves details of a specific technical contact. * <BRχPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED Expected Result Property Key(s) Returned: ATTR_ORGANIZATION ATTR_PHONE ATTR_FAX ATTR_EMAIL ATTR_ADDRESS1 ATTR_CITY ATTR_STATE ATTR_POSTAL_CODE ATTR_COUNTRY_CODE * </PRExBR> * ©param pTechContactld the parameter value * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale . toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_LOOKUP * ©see NSIWholesaleAPI#CLASS_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#COMBO_LOOKUP_TECHNICAL_CONTACT * ©see NSIWholesaleAPI#PARM_TECH_CONTACT_ID * * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED * */ public WSPResponse lookupTechnicalContact ( String pTechContactld, Properties optionalAttributes) throws NSIWholesaleException { return lookupTechnicalContact ( pTechContactld, optionalAttributes , 0); } protected WSPResponse lookupTechnicalContact ( String pTechContactld, Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + ". lookupTechnicalContact (String, Properties, int) " ; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ; allParmsAndAttrs .put (PARM_TECH_CONTACT_ID, pTechContactld) ; returnCode = conn.makeRequest (COMBO_LOOKUP_TECHNICAL_CONTACT, allParmsAndAttrs) ; pool .checkln (conn) ; return returnCode; } catch (Exception e) { try { pool . release (conn) ; } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return lookupTechnicalContact ( pTechContactld, optionalAttributes, count + 1) ,- } } } /** * This method returns basic information about the supported * protocol commands and classes. * <BRχPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED Expected Text Returned: ...The Help Text... Expected Result Property Key(s) Returned: textl: text2 : text3 : ...etc... * </PRExBR> * ©return the Wholesale Server Protocol Server response * ©exception nsi . wholesale . toolkit . j avaapi . NSIWholesaleException when unable to complete command * ©see WSPResponse#getProperties * ©see NSIWholesaleAPI#COMMAND_HELP * ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * */ public WSPResponse helpO throws NSIWholesaleException { return help ( new Properties () , 0); } /** * This method returns basic information about the supported * protocol commands and classes. * <BRxPRE> Expected Major Result Code: COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED Expected Text Returned : ...The Help Text... Expected Result Property Key(s) Returned: textl: text2 : text3 ...etc... * </PRExBR> * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit .javaapi .NSIWholesaleException when unable to complete command * ©see WSPResponse#getProperties * ©see NSIWholesaleAPI#COMMAND HELP ©see WSPResponse#COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED */ public WSPResponse help ( Properties optionalAttributes) throws NSIWholesaleException { return help ( optionalAttributes , 0); } protected WSPResponse help( Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .help (Properties, int) "; if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"),- } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool. checkout () ; Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) ,- returnCode = conn. makeRequest (COMMAND_HELP, allParmsAndAttrs) ; pool .checkln(conn) ; return returnCode,- } catch (Exception e) { try { pool . release (conn) ,- } catch (ResourceException re) { System. err. println (methodName + "Caught ResourceException" + re) ; } finally { return help( optionalAttributes , count + 1) ; } } } ** * This method terminates the wholesaler's access to session commands. * <BRxPRE> Expected Major Result Code: COMMAND_SUCCEEDED_CLOSING_CONNECTION * </PRExBR> * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND_QUIT * * ©see WSPResponse#COMMAND_SUCCEEDED_CLOSING_CONNECTION * */ public WSPResponse quit() throws NSIWholesaleException { return quit ( new Properties () , 0); } /** * This method terminates the wholesaler's access to session commands. * <BRχPRE> Expected Major Result Code: COMMAND_SUCCEEDED_CLOSING_CONNECTION * </PRExBR> * ©param optionalAttributes a property list of optional attributes * ©return the Wholesale Server Protocol Server response * ©exception nsi .wholesale. toolkit . javaapi .NSIWholesaleException when unable to complete command * ©see NSIWholesaleAPI#COMMAND QUIT * * ©see WSPResponse#COMMAND_SUCCEEDED_CLOSING_CONNECTION * */ public WSPResponse quit ( Properties optionalAttributes) throws NSIWholesaleException { return quit ( optionalAttributes, 0); ■ } protected WSPResponse quit ( Properties optionalAttributes, int count) throws NSIWholesaleException { String methodName = className + " .quit (Properties, int) " ,- if (count > retry) { throw new NSIWholesaleException (methodName + "Unable to complete command"); } NSIWholesaleConnection conn = null; WSPResponse returnCode; try { conn = (NSIWholesaleConnection) pool .checkout () ,- Properties allParmsAndAttrs = new Properties () ; // put optional attributes propertiesCat (allParmsAndAttrs, optionalAttributes) returnCode = conn.makeRequest (COMMAND_QUIT, allParmsAndAttrs) ; pool . checkln (conn) ; return returnCode,- } catch (Exception e) { try { pool .release (conn) ,- } catch (ResourceException re) { System. err .println (methodName + "Caught ResourceException" + re) ; } finally { return quit ( optionalAttributes, count + 1) ,- } } } //#--END API ** * This method shutsdown the Wholesaler Services Protocol API. * ©return void * */ public void shutdown () { System. out .println ( "NSIWholesaleAPI . shutdown: " + "Calling pool . shutdown ( ) ..."); //pool . shutdown ( ) ; try { //pool . close () ,- pool .close (60000, 60000); } catch (ResourceException re) { System. err .println ("Exception Caught: " + re); } System. out .println ( "NSIWholesaleAPI .shutdown: " + "pool . shutdown ( ) returned ! " ) ; } // Support Functions ** * This method parses the string argument as a signed decimal integer * ©param valueString the string to be parsed as an int * ©return an int representing the valueString * ©see Java. lang. Integer#parselnt * */ protected static int parselnt (String valueString) { try { return Integer .parselnt (valueString) ,- } catch (NumberFormatException nfe) { return 0 ,- } } ** * This method concatinates the source property list onto the end of the * target propery list. Filtering is done to remove properties associated with * credit card charges. * ©param target the target (destination) property list * ©param source the source property list * ©return void * ©see j ava.util . Properties * */ protected static void propertiesCat (Properties target, Properties source) { String methodName = className + " .propertiesCat (Properties, Properties) "; if ((target == null) || (source == null)) { return; } // concatinate source properties onto target properties if (source. isEmptyO == false) { try { String key; String value,- Enumeration e = source. ropertyNames () ; while (e.hasMoreElements () ) { key = (String) e.nextElement () ,- value = source.getProperty (key) ; target .put (key, value); } } catch (NoSuchElementException nsee) { System. err.println (methodName + "Invalid Properties"),- nsee.printStackTrace () ; } } return; } ** * This method concatinates the source property list onto the end of the * target propery list. * ©param protocol client (your) protocol * ©return true if your protocol matches wholesale services protocol, * otherwise false * ©see NSIWholesaleAPI#ATTR__PROTOCOL * ©see NSIWholesaleAPI#Describe * */ protected boolean verifyConnectionProtocol (String protocol) throws NSIWholesaleException { String methodName = className + " .verifyConnectionProtocol (String) / WSPResponse wspResponse = describe (ATTR_PROTOCOL) ; if (wspResponse == null) { System. err.println (methodName + "Unable to verify connection protocol " + protocol) ; return false; } if ( spResponse.getMajorResultCode () == WSPResponse . COMMAND_EXECUTI0N_SUCCEEDED_PROPERTIES_BEING_RETURNED) { String wspProtocol = wspResponse.getProperty (ATTR_PROTOCOL) ,- if (wspProtocol == null) { System. err .println (methodName + "Unable to verify connection protocol " + protocol) ; return false; } if (protocol .equals (wspProtocol) ) { System. out .println (methodName + "Successfully verified connection protocol " + protocol) ; return true,- } else { System. err .println (methodName + "Failed to verify connection protocol : " + "Your Protocol = <" + protocol + "> while Wholesale Services Protocol = <" + wspProtocol + ">"),- return false; } } else { System. err .println (methodName + "Unable to verify connection protocol " + protocol) ,- return false; } } } ti ¬ ll End of file NSIWholesaleAPI . Java // Copyright (c) 2000 Network Solutions, Inc The class definition for WSPResponse is as follows: / // Package // package nsi . wholesale . toolkit . javaapi ,- // Imports ... // import Java.util .NoSuchElementException; import Java .util . StringTokenizer; import Java .util .Hashtable; import Java. util .Vector; import Java. util. Enumeration; import java. util. Properties; import Java. text .* ; * * * Copyright (c) 2000 Network Solutions, Inc <BR> * This class represents the various components of a * Wholesale Services Protocol (WSP) Response. * A WSP response will be returned for each request that is issued * throught the protocol. A response will describe, in as much detail * as possible, the outcome of the issued request, and will optionally * include any additional information that was generated by the request. * A result consists of a 'result code' followed by a descriptive * 'result message'. A 'result code' consists of a major result code * followed by a period ('.'), followed by a minor result code. * The three-digit major result code provides a general indication of * the success or failure of an issued request. * In most cases, one or more result properties are returned. A result * property consists of a property key followed by a colon (':'), * followed by a property value. * In other cases, plain text is returned (e.g. the information returned * from the Help command) . Both of these cases are indicated by specific * result codes. * * ©author David A. Moston * ©see NSIWholesaleAPI * ©since 27 July 2000 * ©version 1.0 * * *<BR> <BR > * $Log$ *<BR> <BR> */ public class WSPResponse { // // Beginning of Required/Standard Fields // /** Serial Version */ static long serialVersion = IL; /** Release Version */ static double version = 1.0D; /** SCCS control ID */ static final String sccsID = "©(#) wholesale-sdk_dl .12.1.3 08/04/00 10:27:15 WSPResponse . Java NSI",- /** JDK Version */ static String JdkVersion = "1.1.7"; // Static Accessor Method (s) ... /** Static accessor method to get serial version */ static public long getSerialVersionO { return serialVersion; } /** Static accessor method to get release version */ static public double getVersionO { return version; } /** Static accessor method to get JDK version */ static public String getJdkVersion () { return JdkVersion; } // // End of Required/Standard Fields // // // class (static) variable (s) ... // /** The name of this class */ private static final String className = "WSPResponse"; /** Ease-of-use constant for Major Result Code: Minimum. (Note: this is NOT a valid/supported major result code) All valid/supported major result codes will be greater than the minimum and less than the maximum, respectively */ public static final int MAJOR_RESULT_C0DE_MIN = 99; /** Ease-of-use constant for Major Result Code [General Information]: Minimum. (Note: this is NOT a valid/supported major result code) */ public static final int MAJOR_RESULT_CODE_GENERAL_INFORMATION_MIN = 99; /** Ease-of-use constant for Major Result Code [General Information]: General information */ public static final int GENERAL_INFORMATION = 100; /** Ease-of-use constant for Major Result Code [General Information]: Maximum. (Note: this is NOT a valid/supported major result code) */ public Static final int MAJOR_RESULT_CODE_GENERAL_INFORMATION_MAX = 199 ; /** Ease-of-use constant for Major Result Code [Success] : Minimum. (Note: this is NOT a valid/supported major result code) */ public static final int MAJOR_RESULT_CODE_SUCCESS_MIN = 199; /** Ease-of-use constant for Major Result Code [Success] : Authentication successful */ public static final int AUTHENTICATION_SUCCESSFUL = 210; /** Ease-of-use constant for Major Result Code [Success] : Session created */ public static final int SESSION_CREATED = 220; /** Ease-of-use constant for Major Result Code [Success] : Command succeeded, closing connection */ public static final int COMMAND_SUCCEEDED_CLOSING_CONNECTION = 221; /** Ease-of-use constant for Major Result Code [Success] : Command accepted, now executing */ public static final int COMMAND_ACCEPTED_NOW_EXECUTING = 230; /** Ease-of-use constant for Major Result Code [Success] : Command not available */ public static final int COMMAND_NOT_AVAILABLE = 231; /** Ease-of-use constant for Major Result Code [Success] : Command execution succeeded, no data being returned; Ok */ public static final int COMMAND_EXECUTION_SUCCEEDED_NO_DATA_BEING_RETURNED = 240; /** Ease-of-use constant for Major Result Code [Success] : Command execution succeeded, properties being returned */ public static final int COMMAND_EXECUTION_SUCCEEDED_PROPERTIES_BEING_RETURNED = 241; /** Ease-of-use constant for Major Result Code [Success] : Command execution succeeded, text being returned */ public Static final int COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED = 242; /** Ease-of-use constant for Major Result Code [Success] : Maximum. (Note: this is NOT a valid/supported major result code) */ public Static final int MAJOR_RESULT_CODE_SUCCESS_MAX = 299; /** Ease-of -use constant for Major Result Code [Failure] Minimum. (Note: this is NOT a valid/supported major result code) */ public static final int MAJOR_RESULT_CODE_FAILURE_MIN = 299; /** Ease-of -use constant for Major Result Code [Failure] Authentication failed */ public static final int AUTHENTICATION_FAILED = 310; /** Ease-of -use constant for Major Result Code [Failure] : Too many connections */ public static final int TOO_MANY_CONNECTIONS = 320; /** Ease-of -use constant for Major Result Code [Failure] : Too many connections from current wholesaler */ public static final int TOO_MANY_CONNECTIONS_FROM_CURRENT_WHOLESALER 321; /** Ease-of -use constant for Major Result Code [Failure] : Wholesaler account has been suspened */ public static final int WHOLESALER ACCOUNT HAS BEEN SUSPENDED = 322; /** Ease-of-use constant for Major Result Code [Failure] : Session timed out */ public static final int SESSION_TIMED_OUT = 323; /** Ease-of-use constant for Major Result Code [Failure] : Server closing connection - Command timed out */ public Static final int SERVER_CLOSING_CONNECTION = 324; /** Ease-of-use constant for Major Result Code [Failure] : Invalid command public static final int INVALID_COMMAND = 330; /** Ease-of-use constant for Major Result Code [Failure] : Invalid class public static final int INVALID_CLASΞ = 331; /** Ease-of-use constant for Major Result Code [Failure] : Formatting error */ public static final int FORMATTING_ERROR = 332; /** Ease-of-use constant for Major Result Code [Failure] : Missing required parameter */ public static final int MISSING_REQUIRED_PARAMETER = 333; /** Ease-of-use constant for Major Result Code [Failure] : Invalid attribute */ public static final int INVALID_ATTRIBUTE = 334; /** Ease-of-use constant for Major Result Code [Failure] : Invalid value */ public static final int INVALID_VALUE = 335; /** Ease-of-use constant for Major Result Code [Failure] : Missing required attribute */ public Static final int MISSING_REQUIRED_ATTRIBUTE = 336; /** Ease-of-use constant for Major Result Code [Failure] : Missing required value */ public Static final int MISSING_REQUIRED_VALUE = 337; /** Ease-of-use constant for Major Result Code [Failure] : Missing parameter */ public static final int INVALID_PARAMETER = 338; /** Ease-of-use constant for Major Result Code [Failure] : Command failed, unknown error - Command failed, internal error */ public static final int COMMAND_FAILED_UNKNOWN_ERROR = 340; /** Ease-of-use constant for Major Result Code [Failure] Object not found */ ... public static final int OBJECT_NOT_FOUND = 341; /** Ease-of-use constant for Major Result Code [Failure] Command access denied */ public static final int COMMAND_ACCESS_DENIED = 342; /** Ease-of-use constant for Major Result Code [Failure] General access denied - Access to request denied */ public static final int GENERAL_ACCESS_DENIED = 343; /** Ease-of-use constant for Major Result Code [Failure] Maximum. (Note: this is NOT a valid/supported major result code) */ public static final int MAJOR_RESULT_CODE_FAILURE_MAX = 399; /** Ease-of-use constant for Major Result Code: Maximum. (Note: this is NOT a valid/supported major result code) All valid/supported major result codes will be greater than the minimum and less than the maximum, respectively */ public static final int MAJOR_RESULT_CODE_MAX = 400; II- // class (static) method(s) ... / / // static initializer block ... // / // instance Variable (s) ... // ** * WSP response result code (consisting of a major result code, * followed by a period ('.'), followed by a minor result code) . */ private String resultCode = null; ** * WSP response major result code */ private int majorResultCode = 0; * * * WSP response minor result code */ private int minorResultCode = 0; /* * * The original WSP text response string used to instantiate object. * The raw WSP response consists of one or more <CRLF> delimited lines, * terminated by a line containing only a period ('.'), followed by <CRLF>. */ private String rawResponse = null; /** * The result message extracted from the original WSP text response. */ private String resultMessage = null; /** The WSP response attributes extracted from the original WSP text response. */ private Hashtable attributes = null; // // Constructors // / ** * Parses a WSP text response and extracts and stores the * various components . * * ©param data the raw WSP response text * ©exception InvalidArgumentException if <code>data</code> is null. * ©exception InvalidResponseFormatException if <code>data</code> is. * not a properly formatted * WSP response. */ public WSPResponse (String data) throws InvalidArgumentException, InvalidResponseFormatException { if (data == null) { throw new InvalidArgumentException ( "null argument: data"); } parseRawResponse (data) ; setRawResponse (data) ,- } ** * Create a new WSPResponse based on value inputs. * * ©param majorCode the major code for the WSPResponse. * ©param minorCode the minor code for the WSPResponse. * ©param message the text string associated with the message. * ©param assocProps the properties associated with this message. * * ©exception InvalidArgumentException if majorCode or minorCode is or * not in the appropriate range. */ public WSPResponse (int majorCode, int minorCode, String message, Properties assocProps) throws InvalidArgumentException { if ((majorCode == null) || (minorCode == null) || (majorCode < MAJOR_RESULT_CODE_MIN ) | | (majorCode > MAJOR_RESULT_CODE_MAX) | | (minorCode < 0 ) | | (minorCode > 999)) { throw new InvalidArgumentException ( "null argument: data"),- } majorResultCode = majorCode; minorResultCode = minorCode; resultMessage = new String (message) ; if (assocProps != null) { Enumeration enum = assocProps .propertyNames () ; while (enum.hasMoreElements () ) { String prop_key = (String) enum.nextElement ( ) ; String value = prop.getProperty (prop_key) ; addAttribute (prop_key, value); } } DecimalFormat myFmt = new DecimalFormat () ; myFmt . setMinimumlntegerDigits (3 ) ,- myFmt . setMaximumlntegerDigits (3 ) ,- myFmt . setMaximumFractionDigits (3 ) ,- myFmt . setMinimumFractionDigits (3) ,- double x = majorCode + minorCode/1000.0; resultCode = myFmt . format (x) ; } // // Accessors and Mutators // ** * Returns the original WSP text response string used to instantiate * object. * ©return the original WSP text response. */ public String getRawResponse () { return rawResponse; } /** * Returns the result message extracted from the original WSP * text response. * ©return the WSP response result message. */ public String getResultMessage () { return resultMessage; } ** * Returns any attributes, if applicable, extracted from the original * WSP text response. * * ©return response attributes if any exist, null otherwise. */ Hashtable getAttributes () { return attributes; } ** * returns the result property value corresponding to the specified * result property key, if found, extracted from the original * WSP text response. * * ©param resultPropertyKey a result property key * ©return the corresponding result property value, otherwise null */ public String getProperty (String resultPropertyKey) { String resultPropertyValue = null; Hashtable attributes = getAttributes () ,- if (attributes == null) { return resultPropertyValue; } Vector vector = (Vector) attributes .get (resultPropertyKey) ,- if (vector == null) { return resultPropertyValue; } for (int i = 0; i < vector . size () ; i++) { resultPropertyValue = (String) vector . elementAt (i) ; } return resultPropertyValue; } /** * Returns a property list containing all result property specifications, * if applicable, extracted from the original WSP text response. * Note: when the major result code = COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * text is being returned in the response, as opposed to result property specifications . * Since there are no defined result property keys for returned text, a dummy * result property key is generated for each line of text. * That dummy result property key will look like ' text# ' , where # * is a number from 1 to N (N being the number of lines of text returned) . * For example, the first dummy result property key will be 'textl'. * For example, the tenth dummy result property key will be 'textlO'. * * * ©return response attributes if any exist, null otherwise. * ©see WSPResponse#getText */ public Properties getProperties () { Properties props = new Properties () ,- Hashtable attributes = getAttributes () ; if (attributes == null) { return null; } Enumeration enum = attributes . eys () ,- int lineNumber = 0; while (enum.hasMoreElements () ) { lineNumber++; String key = null,- Vector vector = null; key = (String) enum.nextElement () ; //if Command execution succeeded; text being returned if (getMajorResultCode() == COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED) { key = "text" + lineNumber; // Create a "dummy" key for this line of text } vector = (Vector) attributes .get (key) ,- for (int i=0; i < vector . size () ,- i++) { props .put (key, (String) vector .elementAt (i) ) ,- } } return props ; } ** * Returns a property list containing all result property specifications, * if applicable, extracted from the original WSP text response. * Note: when the major result code = COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED * text is being returned in the response, as opposed to result property specifications. * Since there are no defined result property keys for returned text, a dummy * result property key is generated for each line of text. * That dummy result property key will look like ' text# ' , where # * is a number. from 1 to N (N being the number of lines of text returned) . * For example, the first dummy result property key will be 'textl'. * For example, the tenth dummy result property key will be 'textlO'. * * ©param wspResponse the WSP response * ©return response attributes if any exist, null otherwise. * ©see WSPResponsettgetText */ public static Properties getProperties (WSPResponse wspResponse) { return wspResponse. getProperties () ; } ** * returns a vector containing lines of text returned in the WSP response. * Note: when the major result code is COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED, * text is being returned in the response, as opposed to result property specifications . * There are no result property keys defined for text. * This method returns a vector of Strings. Each element (String) in the vector is a line of text. * * ©param wspResponse the WSP response * * ©return a vector containing lines of text returned, otherwise null * ©see WSPResponse#getProperties */ public Vector getText () { Vector text = new Vector ( ) ,- //if not: Command execution succeeded; text being returned if (getMajorResultCode () != COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED) { return null; } Hashtable attributes = getAttributes () ; if (attributes == null) { return null; } Enumeration enum = attributes .keys () ; int lineNumber = 0; while (enum.hasMoreElements () ) { lineNumber++; String key = null; Vector vector = null; key = (String) enum.nextE1ement () ,- //Command execution succeeded; text being returned key = "text" + lineNumber; // Create a "dummy" key for this line of text vector = (Vector) attributes .get (key) ; for (int i=0; i < vector . size () ; i++) { text .addElement ( (String) vector .elementAt (i) ) ,- } return text ,- /** * sets the raw response text * * ©param aRawResponse the raw WSP response text * ©return void */ private void setRawResponse (String aRawResponse) { rawResponse = aRawResponse; } ** * sets the response result code * * ©param inResultCode the WSP response result code * ©return void */ private void setResultCode (String inResultCode) { resultCode = inResultCode; } ** * returns the WSP response result code and result message * * ©return the WSP response result code and result message */ public String getResultCodeAndMessage () { return (getResultCode ( ) + " " + getResultMessage ( ) ) ; / ** * returns the WSP response result code * ©return the WSP response result code */ public String getResultCode () { return resultCode; } /** * returns the WSP response major result code * * ©return the WSP response major result code */ public int getMajorResultCode () { parseResultCode ( ) ; return majorResultCode,- } / ** * returns the WSP response minor result code * * ©return the WSP response minor result code */ public int getMinorResultCode () { parseResultCode () ; return minorResultCode; } /** * sets the WSP response result message * ©param aResultMessage the WSP response result message * ©return void */ private void setResultMessage (String aResultMessage) { resultMessage = aResultMessage,- } / ** * sets the WSP response attributes * * ©param hash the WSP response attributes * ©return void */ private void setAttributes (Hashtable hash) { attributes = hash; } // // General Methods // ** * parses the current result code into major and minor result codes. * * ©return true if result code is successfully parsed, otherwise false */ private boolean parseResultCode () { boolean re = true,- String methodName = className + " .parseResultCode () "; String sResultCode = getResultCode () ; String sMajorResultCode = null; String sMinorResultCode = null; int iMajorResultCode = 0; int iMinorResultCode = 0 ,- try { StringTokenizer st = new StringTokenizer (sResultCode, "."),- sMajorResultCode = st .nextTokenO ; sMinorResultCode = st .nextTokenO ; iMajorResultCode = Integer .parselnt (sMajorResultCode) ; iMinorResultCode = Integer.parselnt (sMinorResultCode) ; } catch (NoSuchElementException nsee) { System. err. println (methodName + "Unable to parse result code <" + sResultCode + ">"),- nsee. printStackTrace () ; } catch (NumberFormatException nfe) { System. err. println (methodName + "Invalid result code <" + sResultCode + ">"),- nfe .printStackTrace () ; } finally { if (iMajorResultCode <= 0) { re = false; } else { majorResultCode = iMajorResultCode,- minorResultCode = iMinorResultCode; } } return re; } ** * prints debug-type representation of the WSP Response to standard output * * ©param response a WSP resonse * ©return 'void */ public static void displayResponse (WSPResponse response) { System, out .println ( "Result Code: " + response. getResultCode ()) ,- System. out .println ( "Major Result Code: " + response.getMajorResultCode () ) ; System. out .println ("Minor Result Code: " + response. getMinorResultCode () ) ; System. out .println ("Result Message: " + response . getResultMessage ( ) ) ; Hashtable attributes = response.getAttributes () ; if (attributes == null) { System, out .println ( "Result Properties: NONE"),- return; } System, out .println ("Result Properties:"),- Enumeration enum = attributes .keys () ; while (enum.hasMoreElements () ) { String key = null; Vector vector = null; key = (String) enum.nextElement () ; vector = (Vector) attributes. get (key) for (int i=0; i < vector . size 0 ; i++) { System. out .println (key + ":" + (String) vector, elementAt (i) ) ,- } } } * * * returns the raw WSP response * * ©return a string representing the raw WSP response */ public String toString () { if (rawResponse != null) { return rawResponse; } if (responseCode == null) { fabricatedResponse = new String ("001.001" ) ,- } else { fabricatedResponse = new String (responseCode) ,- } if (resultMessage == null) { fabricatedResponse = new String (fabricatedResponse+"<<Message is null>>\r\n" ) ,- } else { fabricatedResponse = new String (fabricatedResponse+resultMessage+"\r\n" ) ; } if (attributes != null) { Enumeration enum = attributes .keys () ,- while (enum.hasMoreElements () ) { String key = null; Vector vector = null; key = (String) enum.nextElement () ,- vector = (Vector) attributes .get (key) ; for (int i=0; i < vector . size () ,- i++) { fabricatedResponse = new String (fabricatedResponse+ key + (String) vector .elementAt (i) + "\r\n") ; } } } fabricatedResponse = new String (fabricatedResponse+" . \r\n" ) : return fabricatedResponse; } ** * Parse raw WSP text response and extract and store all components * ©param data the raw WSP text response * ©return void * ©exception InvalidResponseFormatException upon detection of an invalid response format */ private void parseRawResponse (String data) throws InvalidResponseFormatException { String methodName = className + " .parseRawResponse (String) " ; // // Split data by <CRLF> // StringTokenizer st = new StringTokenizer (data, "\r\n"); // // Get the first line of the response // String responseLine = " " ; try { responseLine = st .nextTokenO ; } catch (NoSuchElementException e) { throw new InvalidResponseFormatException ( "Missing first line") ,- } // // Extract "result code" and "result message" from first line // of response. // int spacelndex = responseLine. indexOf ( ' '),- // // If there is no space in the string, then the format is invalid. // First line must be "code message" // if (spacelndex == -1) { throw new InvalidResponseFormatException ( "missing/invalid code and message"),- } // // The code is comprised of the set of characters spanning the // the first character to the space // String myresultCode = responseLine. substring (0, spacelndex); // // trim any whitespace from both ends of code // myresultCode = myresultCode . trim 0 ,- // // Attempt to convert the string result code to an integer // setResultCode (myresultCode) ; // // Extract the result message now // String desc = null; // // The result message is comprised of all characters spanning from // the first character after the space to the end of the entire string // desc = responseLine . substring (spacelndex + 1, responseLine . length ( ) ) ; // // trim any whitespace from both ends of code // desc = desc.trimO; if (desc. length () == 0) { throw new InvalidResponseFormatException ( "Missing result message"); } setResultMessage (desc) ,- String key; String value,- int colonlndex = 0 ,- //if Command execution succeeded; text being returned if (getMajorResultCode () == COMMAND_EXECUTION_SUCCEEDED_TEXT_BEING_RETURNED) { int lineNumber = 0; try { while (st .hasMoreTokens () ) { lineNumber++; / " / // Create a "dummy" key for this line of text // key = "text" + lineNumber; // // Get the next line from the response // value = st .nextTokenO ; // // Break from the loop if we hit the response terminator // if (value. trimO .equals (".") ) break; // // Save attribute // //addAttribute (key. toLowerCase () , value) ; addAttribute (key, value); // end while } // end try catch (NoSuchElementException e) { throw new InvalidResponseFormatException ( "Error splitting response by '\r\n'", e) ; } // end catch } else { // // Iterate through the rest of the response, searching for // attributes. Break from the loop when we encounter the // response terminator // try { while (st .hasMoreTokens () ) { // // Get the next line from the response // responseLine = st . nextToken O ,- // // Try to find the colon (' : ') in the string // colonlndex = responseLine . indexOf (':'); // // If the colon is missing, then check to see if we ' ve // encountered the response terminator. If we haven ' t , // then the response is formatted improperly // if (colonlndex == -1) { responseLine = responseLine. trim () ,- // // Break from the loop if we hit the response terminator // if (responseLine. equals ( " . ") ) { break; } else { throw new InvalidResponseFormatException ( "Invalid attribute key-value pair") ; } // // The attribute key is everything before the colon // key = responseLine. substring (0, colonlndex); key = key. trim(); // // The attribute value is everything after the colon // value = responseLine. substring (colonlndex + 1) ; value = value . trim ( ) ,- // // Save attribute // //addAttribute (key. toLowerCase () , value) ; addAttribute (key, value); } // end while } // end try catch (NoSuchElementException e) { throw new InvalidResponseFormatException ( "Error splitting response by '\r\n'", e) ,- } // end catch } } //parseRawRespose ** * Attributes are stored in a hashtable. Since there can be multiple * values for the same key, we store all values in vectors. Everytime * a value is added for a key that already exists, we just add that * value to that key's vector. If a key does not yet exist, then * we create a new vector and add the value to it. * ©param key a result property key * ©param value a result property value * ©return void */ private void addAttribute (String key, String value) { Hashtable hash = getAttributes 0 ,- if (hash == null) { hash = new Hashtable ( ) ,- setAttributes (hash) ; } Vector vector = (Vector) hash. get (key) ; if (vector == null) { vector = new Vector (1) ; hash.put (key, vector); } vector .addElement (value) ; } // // End of file WSPResponse. Java // Copyright (c) 2000 Network Solutions, Inc

Claims: WHAT IS CLAIMED IS: 1. A method for interfacing a user application program to a system for conducting a transaction associated with managing Internet domain names, comprising the steps of: receiving a request in an application program interface from the application program to establish over the Internet a session between the user and the system; authenticating the right of the user to conduct a transaction associated with managing Internet domain names; establishing a secure socket layer within the application program interface and the system; receiving a request in the application program interface from the applications program to initiate a transaction following such authentication; and transmitting commands from the application program interface, to the system effectuating the transaction. 2. A method as set forth in claim 1, further comprising the step of: notifying the application program as to the status of processing of the command. 3. A method as set forth in claim 2, wherein: the notifying step comprises the step of returning a response to the application program containing a statement indicating whether the transaction has been fulfilled. 4. A method as set forth in claim 3, wherein: the statement comprises a message which includes an ASCII text portion, followed by a delimiter portion. 5. A method as set forth in claim 4, wherein: the ASCII text portion is selected from a predefined dictionary of statements. 6. A method as set forth in claim 1, wherein: authenticating the user is determined from the Internet Protocol address, secure socket layer encryption, and user name and password provided by the application program. 7. A method as set forth in claim 1, wherein: the authenticating step includes the step of at least one additional attempt to authenticate the user following a first failed attempt. 8. A method as set forth in claim 7, wherein: following said at least one additional attempt to authenticate the user is denied further attempts to be authenticated should said at least one additional attempt fail. 9. Apparatus for interfacing a user application program to a system for conducting transactions associated with managing Internet Domain Names comprising: a component for receiving a request from an applications program to establish over the Internet a connection between a user and the system; a component for authenticating the right of the user to conduct a transaction associated with managing Internet domain names; a component for establishing a secure socket layer within the apparatus; a component for initiating a transaction following such authentication and following receipt of a request from the applications program; and a component for transmitting commands for effectuating the transaction via the secure socket layer to the system.

Inventors: BREM LARRY, CHAUHAN SANJEEV, KORZENIEWSKI GREG, MOSTON DAVID, NAKHRE SUJATA, TAYLOR BRIAN, BREM, LARRY, CHAUHAN, SANJEEV, KORZENIEWSKI, GREG, MOSTON, DAVID, NAKHRE, SUJATA, TAYLOR, BRIAN
Applicants: NETWORK SOLUTIONS INC, NETWORK SOLUTIONS, INC.
Application year: 2000
Main classification: G06F17
IPC codes: G06Q30, H04L12, H04L29