Package com.tmm.enterprise.microblog.util

Source Code of com.tmm.enterprise.microblog.util.BatchProcess

package com.tmm.enterprise.microblog.util;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.security.authentication.TestingAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.GrantedAuthorityImpl;
import org.springframework.security.core.context.SecurityContextHolder;

import com.tmm.enterprise.microblog.security.Account;
import com.tmm.enterprise.microblog.security.ApplicationUser;
import com.tmm.enterprise.microblog.service.AccountService;
import com.tmm.enterprise.microblog.service.ActivityService;
import com.tmm.enterprise.microblog.service.ContactableService;
import com.tmm.enterprise.microblog.service.MessageService;
import com.tmm.enterprise.microblog.service.NotificationService;
import com.tmm.enterprise.microblog.service.SearchService;
import com.tmm.enterprise.microblog.service.StatusService;

public class BatchProcess {
  private static final String BATCH_USER_NAME = "batch";

  private ApplicationContext applicationContext = null;
  private StatusService statusService;

  private SearchService searchService;

  private AccountService accountService;

  private BatchService batchService;

  private ActivityService activityService;

  private ContactableService contactService;

  private MessageService messageService;

  private NotificationService notificationService;

  public BatchProcess() {
  }

  public Account getAccount() {
    return getAccountService().loadAccountByUserName(BATCH_USER_NAME);
  }

  public void setCredentials() {
    Account account = getAccountService().loadAccountByUserName(BATCH_USER_NAME);

    GrantedAuthority[] auths = new GrantedAuthority[1];
    auths[0] = new GrantedAuthorityImpl("ROLE_USER");

    ApplicationUser user = new ApplicationUser(new Long(account.getId()), account.getUserName(), account.getPassword(), true, true, true, true,
        auths);

    Authentication auth = new TestingAuthenticationToken(user, "ignored", auths);

    auth.setAuthenticated(true);
    SecurityContextHolder.getContext().setAuthentication(auth);
  }

  public BeanFactory getApplicationContext() {
    if (applicationContext == null) {
      applicationContext = new ClassPathXmlApplicationContext(new String[] { "classpath:/META-INF/spring/beanRefContext.xml" });
    }
    return (BeanFactory) applicationContext.getBean("model.context");
  }

  public void setApplicationContext(ApplicationContext applicationContext) {
    this.applicationContext = applicationContext;
  }

  public StatusService getStatusService() {
    if (statusService == null) {
      statusService = (StatusService) getApplicationContext().getBean("statusService");
    }
    return statusService;
  }

  public SearchService getSearchService() {
    if (searchService == null) {
      searchService = (SearchService) getApplicationContext().getBean("searchService");
    }
    return searchService;
  }

  public ContactableService getContactableService() {
    if (contactService == null) {
      contactService = (ContactableService) getApplicationContext().getBean("contactableService");
    }
    return contactService;
  }

  public ActivityService getActivityService() {
    if (activityService == null) {
      activityService = (ActivityService) getApplicationContext().getBean("activityService");
    }
    return activityService;
  }

  public AccountService getAccountService() {
    if (accountService == null) {
      accountService = (AccountService) getApplicationContext().getBean("accountService");
    }
    return accountService;
  }

  public BatchService getBatchService() {
    if (batchService == null) {
      batchService = (BatchService) getApplicationContext().getBean("batchService");
    }
    return batchService;
  }

  public MessageService getMessageService() {
    if (messageService == null) {
      messageService = (MessageService) getApplicationContext().getBean("messageService");
    }
    return messageService;
  }

  public NotificationService getNotificationService() {
    if (notificationService == null) {
      notificationService = (NotificationService) getApplicationContext().getBean("notificationService");
    }
    return notificationService;
  }
}
TOP

Related Classes of com.tmm.enterprise.microblog.util.BatchProcess

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.