Package org.openhab.core.persistence

Examples of org.openhab.core.persistence.PersistenceService


      for(Entry<String, List<PersistenceConfiguration>> entry : persistenceConfigurations.entrySet()) {
        String serviceName = entry.getKey();
        for(PersistenceConfiguration config : entry.getValue()) {
          if(hasStrategy(serviceName, config, GlobalStrategies.RESTORE)) {
            if(appliesToItem(config, item)) {
              PersistenceService service = persistenceServices.get(serviceName);
              if(service instanceof QueryablePersistenceService) {
                QueryablePersistenceService queryService = (QueryablePersistenceService) service;
                FilterCriteria filter = new FilterCriteria().setItemName(item.getName()).setPageSize(1);
                Iterable<HistoricItem> result = queryService.query(filter);
                Iterator<HistoricItem> it = result.iterator();
View Full Code Here


    String strategyName = (String) context.getJobDetail().getJobDataMap().get(JOB_DATA_STRATEGYNAME);
   
    PersistenceManager persistenceManager = PersistenceManager.getInstance();
    if(persistenceManager!=null) {
      ModelRepository modelRepository = persistenceManager.modelRepository;
      PersistenceService persistenceService = persistenceManager.persistenceServices.get(modelName);
     
      if(modelRepository!=null && persistenceService!=null) {
        EObject model = modelRepository.getModel(modelName + ".persist");
        if (model instanceof PersistenceModel) {
          PersistenceModel persistModel = (PersistenceModel) model;
          for(PersistenceConfiguration config : persistModel.getConfigs()) {
            if(hasStrategy(persistModel, config, strategyName)) {
              for(Item item : persistenceManager.getAllItems(config)) {
                long startTime = System.currentTimeMillis();
                persistenceService.store(item, config.getAlias());
                logger.trace("Storing item '{}' with persistence service '{}' took {}ms",
                    new Object[] { item.getName(), modelName, System.currentTimeMillis() - startTime});
              }
            }
          }
View Full Code Here

   *
   * @param item the item to store
   * @param serviceName the name of the {@link PersistenceService} to use
   */
  static public void persist(Item item, String serviceName) {
    PersistenceService service = services.get(serviceName);
    if (service != null) {
      service.store(item);
    } else {
      logger.warn("There is no persistence service registered with the name '{}'", serviceName);
    }
  }
View Full Code Here

   * @param the point in time for which the state should be retrieved
   * @param serviceName the name of the {@link PersistenceService} to use
   * @return the item state at the given point in time
   */
  static public HistoricItem historicState(Item item, AbstractInstant timestamp, String serviceName) {
    PersistenceService service = services.get(serviceName);
    if (service instanceof QueryablePersistenceService) {
      QueryablePersistenceService qService = (QueryablePersistenceService) service;
      FilterCriteria filter = new FilterCriteria();
      filter.setEndDate(timestamp.toDate());
      filter.setItemName(item.getName());
View Full Code Here

   * @param item the item to check for state updates
   * @param serviceName the name of the {@link PersistenceService} to use
   * @return point in time of the last update or null if none available
   */
  static public Date lastUpdate(Item item, String serviceName) {
    PersistenceService service = services.get(serviceName);
    if (service instanceof QueryablePersistenceService) {
      QueryablePersistenceService qService = (QueryablePersistenceService) service;
      FilterCriteria filter = new FilterCriteria();
      filter.setItemName(item.getName());
      filter.setOrdering(Ordering.DESCENDING);
View Full Code Here

   * @param skipEqual if true, skips equal state values and searches the first state not equal the current state
   * @param serviceName the name of the {@link PersistenceService} to use
   * @return the previous state
   */
  static public HistoricItem previousState(Item item, boolean skipEqual, String serviceName) {
    PersistenceService service = services.get(serviceName);
    if (service instanceof QueryablePersistenceService) {
      QueryablePersistenceService qService = (QueryablePersistenceService) service;
      FilterCriteria filter = new FilterCriteria();
      filter.setItemName(item.getName());
      filter.setOrdering(Ordering.DESCENDING);
View Full Code Here

      return null;
    }
  }

  static private Iterable<HistoricItem> getAllStatesSince(Item item, AbstractInstant timestamp, String serviceName) {
    PersistenceService service = services.get(serviceName);
    if (service instanceof QueryablePersistenceService) {
      QueryablePersistenceService qService = (QueryablePersistenceService) service;
      FilterCriteria filter = new FilterCriteria();
      filter.setBeginDate(timestamp.toDate());
      filter.setItemName(item.getName());
View Full Code Here

TOP

Related Classes of org.openhab.core.persistence.PersistenceService

Copyright © 2018 www.massapicom. 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.