Overview | Package | Class | Tree | Deprecated | Index | Help
| Compoze Software, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## portlets.compoze.groupware.c13n
Class BEALoginExchangeAccountListener

    java.lang.Object
      portlets.compoze.groupware.c13n.DefaultAccountListener
          portlets.compoze.groupware.c13n.BEALoginExchangeAccountListener

All Implemented Interfaces:
  AccountListener, java.io.Serializable

public class BEALoginExchangeAccountListener
extends DefaultAccountListener
implements java.io.Serializable

This class represents an Exchange account listener for handling SSO with the BEA Portal Username and Password being the same as the Microsoft Exchange Username and Password respectively. Modifications to the LoginBacking file is necessary as well to obtain the BEA Portal Password.

Code is for example purpose.

See Also:
  Serialized Form

Constructor Summary
`BEALoginExchangeAccountListener()`

Method Summary
`ConnectionPropertyValue[]` | `getAdditionalConnectionPropertyValues(javax.servlet.http.HttpSession httpSession, GroupwareSession groupwareSession, javax.servlet.http.HttpServletRequest request, Account account, com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper)` Invoked when getting additional account property values.
`ConnectionPropertyValue[]` | `getConnectionPropertyValues(javax.servlet.http.HttpSession session, com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper, Account account, ConnectionPropertyValue[] values)` Invoked when getting account property values.
`ConnectionPropertyValue[]` | `getDefaultConnectionPropertyValues(javax.servlet.http.HttpSession session, com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper, ConnectionPropertyValue[] values)` Invoked when getting default account property values.
`portlets.compoze.groupware.controls.provider.Provider` | `getDefaultProvider()` Invoked when checking for the default provider.
`java.lang.String` | `getRequiredAccountName(javax.servlet.http.HttpSession session, com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper)` Gets the name of the required account.
`boolean` | `isAccountRequired(javax.servlet.http.HttpSession session, com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper)` Checks if at least one account is required.
`boolean` | `isConfigurable()` Invoked when checking if users can configure accounts.
`boolean` | `isPropertyModifiable(ConnectionProperty connProp)` Invoked when checking if the connection property is modifiable.
`boolean` | `isPropertyRequired(ConnectionProperty connProp)` Invoked when checking if the connection property is required.
`boolean` | `supportsMultipleAccounts()` Invoked when checking if multiple accounts are supported.

Methods inherited from class portlets.compoze.groupware.c13n.DefaultAccountListener
`appendConnectionPropertyValue, appendConnectionPropertyValues, decodeValue, dumpConnectionPropertyValues, encodeValue, getAccountListener, getConnectionPropertyValue, isPasswordEncrypted, setConnectionPropertyValues`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BEALoginExchangeAccountListener

    public BEALoginExchangeAccountListener()

Method Detail

### isPropertyModifiable

    public boolean isPropertyModifiable(ConnectionProperty connProp)

  Invoked when checking if the connection property is modifiable.

  Specified by:
    `isPropertyModifiable` in interface `AccountListener`
  Overrides:
    `isPropertyModifiable` in class `DefaultAccountListener`
  Parameters:
    `connProp` - the connection property
  Returns:
    `true` if the connection property is modifiable; `false` otherwise

    To enable the BEA portal Single-Sign-On (SSO), the connection properties for a user should be resolved through the Globla Addressbook Lookup (GAL) at login time.

    For SSO, all connection properties could be made unmodifiable. If user is not allowed to configure the account (see # isConfigurable), then user will not be able to view the connection properties in the portal even if the property is modifiable.

    If you don't want to persist the connection properties and values of a groupware account, you can make the property unmodifiable.

### isPropertyRequired

    public boolean isPropertyRequired(ConnectionProperty connProp)

  Invoked when checking if the connection property is required.

  Specified by:
    `isPropertyRequired` in interface `AccountListener`
  Overrides:
    `isPropertyRequired` in class `DefaultAccountListener`
  Parameters:
    `connProp` - the connection property
  Returns:
    `true` if the connection property is required; `false` otherwise

    Connection required to establish a connection to the Exchange service include:

    1. Username
    2. Password
    3. Exchange Server URL (hostname)
    4. SOAP Server URL (Exchange Service URL)
    5. User domain

    Connection not required to establish a connection to the Exchange service include:

    1. Mailbox: default to the Username unless it is specifically set
    2. SOAP Username
    3. SOAP Password
    4. SOAP Encryption Key
    5. Prococol Class

### supportsMultipleAccounts

    public boolean supportsMultipleAccounts()

  Invoked when checking if multiple accounts are supported.

  Specified by:
    `supportsMultipleAccounts` in interface `AccountListener`
  Overrides:
    `supportsMultipleAccounts` in class `DefaultAccountListener`
  Returns:
    `true` if multiple accounts are supported; `false` otherwise

    In case of SSO, a BEA portal user will be mapped to only one Exchange account. Therefore multiple acounts are not supported.

### isConfigurable

    public boolean isConfigurable()

  Invoked when checking if users can configure accounts.

  Specified by:
    `isConfigurable` in interface `AccountListener`
  Overrides:
    `isConfigurable` in class `DefaultAccountListener`
  Returns:
    `true` if accounts are configurable; `false` otherwise

    In case of SSO, user is not allowed to configure the account.

### getDefaultProvider

    public portlets.compoze.groupware.controls.provider.Provider getDefaultProvider()

  Invoked when checking for the default provider.

  Specified by:
    `getDefaultProvider` in interface `AccountListener`
  Overrides:
    `getDefaultProvider` in class `DefaultAccountListener`
  Returns:
    the default provider

    Exchange service is required groupware provider.

### getConnectionPropertyValues

    public ConnectionPropertyValue[] getConnectionPropertyValues(javax.servlet.http.HttpSession session,
                                                                 com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper,
                                                                 Account account,
                                                                 ConnectionPropertyValue[] values)
                                                          throws GroupwareException

  Invoked when getting account property values.

  Specified by:
    `getConnectionPropertyValues` in interface `AccountListener`
  Overrides:
    `getConnectionPropertyValues` in class `DefaultAccountListener`
  Parameters:
    `session` - the http session (may not be `null`)
    `userProfileWrapper` - the user profile (may not be `null`)
    `account` - the account (may not be `null`)
    `values` - an array of connection property values
  Returns:
    an array of connection property values

    Connection property values are obtained to initialize or create a session for a groupware account. The connection property values belongs to the account passed to this method.

    The connection property values passed to this method could be re-processed here. The returned connection property value could also be obtained from the portal through the user profile wrapper. They could also be extracted from a file, database or any network resources.

    In case of SSO, it is not necessary to persist the general connection property values.

  Throws:
    `GroupwareException`

### getDefaultConnectionPropertyValues

    public ConnectionPropertyValue[] getDefaultConnectionPropertyValues(javax.servlet.http.HttpSession session,
                                                                        com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper,
                                                                        ConnectionPropertyValue[] values)
                                                                 throws GroupwareException

  Invoked when getting default account property values.

  Specified by:
    `getDefaultConnectionPropertyValues` in interface `AccountListener`
  Overrides:
    `getDefaultConnectionPropertyValues` in class `DefaultAccountListener`
  Parameters:
    `session` - the http session (may not be `null`)
    `userProfileWrapper` - the user profile (may not be `null`)
    `values` - an array of connection property values (may not be `null`)

    SSO - The BEA Portal Username and Password will be used to create the Exchange Session. This is only possible if the BEA Portal Username and Password are the same as the MS Exchange Server Username and Password. If a GAL Lookup is desired (to determine the Exchange Server and/or Mailbox), don't pass in the PROP_EXCHANGE_SERVER and/or PROP_EXCHANGE_MAILBOX properties. Some configuration may be necessary on the Compoze Exchange Connector Service machine (SOAP Server) to allow for the GAL Lookup (see the Compoze Exchange Connector setup guide).

  Throws:
    `GroupwareException`

### isAccountRequired

    public boolean isAccountRequired(javax.servlet.http.HttpSession session,
                                     com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper)
                              throws GroupwareException

  Checks if at least one account is required.

  Specified by:
    `isAccountRequired` in interface `AccountListener`
  Overrides:
    `isAccountRequired` in class `DefaultAccountListener`
  Parameters:
    `session` - the http session (may not be `null`)
    `userProfileWrapper` - the user profile (may not be `null`)
  Returns:
    `true` if an account is required; `false` otherwise

    At least one groupware account is required for a user to use the groupware portlet. Without one account, user will not be able to establish a groupware session and then a connection to the Exchange service.

  Throws:
    `GroupwareException`

### getRequiredAccountName

    public java.lang.String getRequiredAccountName(javax.servlet.http.HttpSession session,
                                                   com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper)
                                            throws GroupwareException

  Gets the name of the required account.

  Specified by:
    `getRequiredAccountName` in interface `AccountListener`
  Overrides:
    `getRequiredAccountName` in class `DefaultAccountListener`
  Parameters:
    `session` - the http session (may not be `null`)
    `userProfileWrapper` - the user profile (may not be `null`)
  Returns:
    the account name (may not be `null`)
  Throws:
    `GroupwareException`
  See Also:
    `

    SSO - only one groupware account is required and only one groupware account is supported. The account properties (account name, service provider name, etc.) will be persisted.

    `

### getAdditionalConnectionPropertyValues

    public ConnectionPropertyValue[] getAdditionalConnectionPropertyValues(javax.servlet.http.HttpSession httpSession,
                                                                           GroupwareSession groupwareSession,
                                                                           javax.servlet.http.HttpServletRequest request,
                                                                           Account account,
                                                                           com.bea.p13n.usermgmt.profile.ProfileWrapper userProfileWrapper)
                                                                    throws GroupwareException

  Invoked when getting additional account property values.

  Specified by:
    `getAdditionalConnectionPropertyValues` in interface `AccountListener`
  Overrides:
    `getAdditionalConnectionPropertyValues` in class `DefaultAccountListener`
  Parameters:
    `httpSession` - the http session (may not be `null`)
    `groupwareSession` - the groupware session (may not be `null`)
    `account` - the grouwpware account for which to retrieve additional property values (may not be `null`)
    `userProfileWrapper` - the user profile (may not be `null`)
  Returns:
    an array of connection property values or an empty array
  Throws:
    `GroupwareException`

Overview | Package | Class | Tree | Deprecated | Index | Help
| Compoze Software, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright ©1999-2003 Compoze Software, Inc. All rights reserved.