/* * Copyright (c) 2015. Bearchoke */ package com.bearchoke.platform.persistence.mongo.axon; import com.mongodb.DBCollection; import org.axonframework.saga.repository.mongo.MongoTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.MongoDbFactory; /** * Created by Bjorn Harvold * Date: 1/4/15 * Time: 11:32 AM * Responsibility: */ public class AxonSagaMongoTemplate implements MongoTemplate { private static final String DEFAULT_SAGAS_COLLECTION_NAME = "sagas"; private final String sagasCollectionName; private final MongoDbFactory mongoDbFactory; private final org.springframework.data.mongodb.core.MongoTemplate mongoTemplate; @Autowired public AxonSagaMongoTemplate(MongoDbFactory mongoDbFactory) { this.mongoDbFactory = mongoDbFactory; this.mongoTemplate = new org.springframework.data.mongodb.core.MongoTemplate(mongoDbFactory); this.sagasCollectionName = DEFAULT_SAGAS_COLLECTION_NAME; } @Override public DBCollection sagaCollection() { return mongoTemplate.getCollection(sagasCollectionName); } }