Advertisement
Guest User

Untitled

a guest
Jan 24th, 2018
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.01 KB | None | 0 0
  1. package com.domain.confluence.plugins.bautagebuch;
  2.  
  3. import com.atlassian.confluence.plugins.createcontent.api.contextproviders.AbstractBlueprintContextProvider;
  4. import com.atlassian.confluence.plugins.createcontent.api.contextproviders.BlueprintContext;
  5.  
  6. import com.atlassian.confluence.languages.LocaleManager;
  7. import com.atlassian.confluence.util.i18n.I18NBean;
  8. import com.atlassian.confluence.util.i18n.I18NBeanFactory;
  9. import com.atlassian.confluence.user.AuthenticatedUserThreadLocal;
  10. import com.atlassian.confluence.core.FormatSettingsManager;
  11. import com.atlassian.confluence.user.ConfluenceUserPreferences;
  12. import com.atlassian.confluence.core.DateFormatter;
  13. import com.atlassian.confluence.user.UserAccessor;
  14. import com.atlassian.user.User;
  15.  
  16. import java.util.HashMap;
  17. import java.util.Date;
  18. import java.util.Locale;
  19. import java.util.Map;
  20.  
  21. import static java.util.Arrays.asList;
  22.  
  23. public class BautagebuchContextProvider extends AbstractBlueprintContextProvider {
  24.     private LocaleManager localeManager;
  25.     private final I18NBeanFactory i18NBeanFactory;
  26.     private final UserAccessor userAccessor;
  27.     private final FormatSettingsManager formatSettingsManager;
  28.  
  29.     public BautagebuchContextProvider(LocaleManager localeManager,
  30.                                       I18NBeanFactory i18NBeanFactory,
  31.                                       UserAccessor userAccessor,
  32.                                       FormatSettingsManager formatSettingsManager) {
  33.         this.localeManager = localeManager;
  34.         this.i18NBeanFactory = i18NBeanFactory;
  35.         this.userAccessor = userAccessor;
  36.         this.formatSettingsManager = formatSettingsManager;
  37.     }
  38.    
  39.     @Override
  40.     protected BlueprintContext updateBlueprintContext(BlueprintContext blueprintContext) {
  41.         final String pageTitle = i18nBean().getText("my.blueprint.page.title", asList(getFormattedLocalDate("yyyy-MM-dd")));
  42.            
  43.         String username = AuthenticatedUserThreadLocal.getUsername();
  44.            
  45.         blueprintContext.put("vName", username);
  46.         blueprintContext.setTitle(pageTitle);
  47.         return blueprintContext;
  48.     }
  49.  
  50.     private Locale getLocale() {
  51.         return localeManager.getLocale(getUser());
  52.     }
  53.    
  54.     private Locale getAuthenticatedUserLocale() {
  55.         return localeManager.getLocale(getUser());
  56.     }
  57.    
  58.     private User getUser() {
  59.         return AuthenticatedUserThreadLocal.get();
  60.     }
  61.  
  62.     private I18NBean i18nBean() {
  63.         return i18NBeanFactory.getI18NBean(getLocale());
  64.     }
  65.  
  66.     private String getFormattedLocalDate(String dateFormat) {
  67.         Date today = new Date();
  68.         ConfluenceUserPreferences preferences = userAccessor.getConfluenceUserPreferences(getUser());
  69.         DateFormatter dateFormatter = preferences.getDateFormatter(formatSettingsManager, localeManager);
  70.  
  71.         if (null == dateFormat) {
  72.             return dateFormatter.format(today);
  73.         } else {
  74.             return dateFormatter.formatGivenString(dateFormat, today);
  75.         }
  76.     }
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement