Object <- InternetProvider |
|
|
CollectInternetServiceChoices CollectServiceInfo Finalize FindOrMakeProviderContact PreferredMeans PreferredServiceInfo RegisterProviderDNS UnregisterProviderDNS |
|
Image MeansList Name PostageImage ProviderSetup ServiceInfoList |
| Field | Type | |
|---|---|---|
| InternetProvider: | image: | Image |
| postageImage: | Image | |
| providerSetup: | InternetProviderSetup | |
| meansList: | ObjectList | |
| serviceInfoList: | ObjectList | |
| lastPreferredMeans: | Means |
instance InternetProvider tag; image: nilObject; postageImage: nilObject; providerSetup: nilObject; meansList: nilObject; serviceInfoList: nilObject; lastPreferredMeans: nilObject; end instance;
Define Class InternetProvider; inherits from Object; field image: Image, getter, sharedSetter; field postageImage: Image, getter, sharedSetter; field providerSetup: InternetProviderSetup, weak, getter, setter; field meansList: ObjectList, setter; field serviceInfoList: ObjectList, setter; field lastPreferredMeans: Means, weak; // stores last preference attribute Image: Image; // representative image of this provider attribute PostageImage: Image; // alternate, postage stamp image for displaying in the PostageDisplay // of a telecard being sent via this provider attribute ProviderSetup: InternetProviderSetup; // enables initial setup of the provider attribute MeansList: ObjectList; // list of ways can connect to this provider. The items in // this list are subclasses of Means. attribute ServiceInfoList: ObjectList; // list of configuration information (specific port #s, hostnames, // passwords, etc.) for Internet services (POP, SMTP, DNS, etc.) offered // by this provider. The items in this list are subclasses of InternetServiceInfo. operation CollectInternetServiceChoices(serviceTypes: IntegerList; inquiringService: Object; choiceList: ObjectList): Unsigned; // query this provider for services matching the requested service types. // For each match, an InternetServiceChoice entry is added to the choiceList, // with its 'service' field set to 'inquiringService'. If serviceTypes is // nilObject, a single entry is added for this provider with its internetServiceInfo // field left empty (since no particular service type was requested). Returns // the total # of choices added in this call. Can pass in 'nilObject' for // the choiceList if only want to get a count. // (See Internet.h for common serviceTypes) operation PreferredServiceInfo(serviceType: Unsigned): InternetServiceInfo; // return the first item matching the requested serviceType. (See Internet.h // for common serviceTypes) operation CollectServiceInfo(serviceType: Unsigned; resultList: ObjectList); // add to resultList those items in serviceInfoList which match // the requested serviceType. (See Internet.h for common serviceTypes) operation PreferredMeans(): Means; // return the preferred means for connecting to this provider. This // may be based on certain system parameters, like the user's current // location setting operation FindOrMakeProviderContact(addToMasterList: Boolean): Contact; // searches iContactsMasterList for a contact matching the provider's name. // If not found and providerSetup isn't nil, searches iContactsMasterList // for a contact matching providerSetup's prototype contact. If still // not found, a copy is made of the prototype (if present) or the generic // iPrototypeProviderContact. 'addToMasterList' determines if the // new contact is added to iContactsMasterList. // registering provider's DNS with the DNSResolver operation RegisterProviderDNS(); // adds provider's DNSes to iDNSResolver's list of DNSes to query operation UnregisterProviderDNS(); // removes provider's DNSes from iDNSResolver's list of DNSes to query overrides Finalize; // removes all known references to this provider from the system overrides SetName; // so that if the user changes the name, it can update the name card (if there is one) end class;