1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portlet.admin.job;
21  
22  import com.liferay.portal.kernel.job.IntervalJob;
23  import com.liferay.portal.kernel.job.JobExecutionContext;
24  import com.liferay.portal.kernel.log.Log;
25  import com.liferay.portal.kernel.log.LogFactoryUtil;
26  import com.liferay.portal.kernel.util.Time;
27  import com.liferay.portal.security.ldap.PortalLDAPUtil;
28  import com.liferay.portal.util.PrefsPropsUtil;
29  import com.liferay.portal.util.PropsKeys;
30  import com.liferay.portal.util.PropsValues;
31  
32  /**
33   * <a href="LDAPImportJob.java.html"><b><i>View Source</i></b></a>
34   *
35   * @author Michael Young
36   *
37   */
38  public class LDAPImportJob implements IntervalJob {
39  
40      public LDAPImportJob() {
41          try {
42              long rawInterval = PrefsPropsUtil.getLong(
43                  PropsKeys.LDAP_IMPORT_INTERVAL,
44                  PropsValues.LDAP_IMPORT_INTERVAL);
45  
46              if (_log.isDebugEnabled()) {
47                  _log.debug("Interval " + rawInterval + " minutes");
48              }
49  
50              _interval =  rawInterval * Time.MINUTE;
51          }
52          catch (Exception e) {
53              _log.error(e, e);
54          }
55      }
56  
57      public void execute(JobExecutionContext context) {
58          try {
59              PortalLDAPUtil.importFromLDAP();
60          }
61          catch (Exception e) {
62              _log.error(e, e);
63          }
64      }
65  
66      public long getInterval() {
67          return _interval;
68      }
69  
70      private static Log _log = LogFactoryUtil.getLog(LDAPImportJob.class);
71  
72      private long _interval;
73  
74  }