主担当者を指定せずに組織を作成する場合、デフォルトの主担当者は、その組織を作成した User オブジェクト、つまり、Service Registry への接続確立時に設定した資格の所有者であるユーザーになります。もちろん、それとは異なるユーザーを主担当者として指定することもできます。User もまた、複雑なレジストリオブジェクトです。これには通常、すべてのオブジェクトに共通する属性のほかに、次の属性が含まれます。
1 つの PersonName オブジェクト
1 つまたは複数の PostalAddress オブジェクト
1 つまたは複数の TelephoneNumber オブジェクト
1 つまたは複数の EmailAddress オブジェクト
ユーザーのホームページを表す 1 つまたは複数の URL オブジェクト
次のコードでは、User を作成し、その User を組織の主担当者として設定しています。この User には、電話番号と電子メールアドレスは設定されていますが、住所は設定されていません。
// Create primary contact, set name User primaryContact = blcm.createUser(); String userId = primaryContact.getKey().getId(); System.out.println("User URN is " + userId); PersonName pName = blcm.createPersonName("Jane", "M.", "Doe"); primaryContact.setPersonName(pName); // Set primary contact phone number TelephoneNumber pctNum = blcm.createTelephoneNumber(); pctNum.setCountryCode("1"); pctNum.setAreaCode("100"); pctNum.setNumber("100-1001"); pctNum.setType("MobilePhone"); Collection phoneNums = new ArrayList(); phoneNums.add(pctNum); primaryContact.setTelephoneNumbers(phoneNums); // Set primary contact email address EmailAddress emailAddress = blcm.createEmailAddress("jane.doe@TheCoffeeBreak.com"); emailAddress.setType("OfficeEmail")); Collection emailAddresses = new ArrayList(); emailAddresses.add(emailAddress); primaryContact.setEmailAddresses(emailAddresses); URL pcUrl = new URL((bundle.getString("person.url")); primaryContact.setUrl(pcUrl); // Set primary contact for organization org.setPrimaryContact(primaryContact);
主担当者の電話番号のタイプは、PhoneType 分類スキーマに含まれる Concept の値です。値は "OfficePhone"、"MobilePhone"、"HomePhone"、 "FAX"、または "Beeper" のいずれかです。主担当者の電子メールアドレスのタイプは、EmailType 分類スキーマに含まれる Concept の値です。値は "OfficeEmail" または "HomeEmail" です。