001package io.ebeanservice.docstore.none; 002 003import io.ebean.DocumentStore; 004import io.ebean.plugin.SpiServer; 005import io.ebeaninternal.server.deploy.BeanDescriptor; 006import io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor; 007import io.ebeanservice.docstore.api.DocStoreBeanAdapter; 008import io.ebeanservice.docstore.api.DocStoreFactory; 009import io.ebeanservice.docstore.api.DocStoreIntegration; 010import io.ebeanservice.docstore.api.DocStoreUpdateProcessor; 011 012/** 013 * A stub implementation of DocStoreFactory that will barf if the docStore features are used. 014 */ 015public class NoneDocStoreFactory implements DocStoreFactory { 016 017 @Override 018 public DocStoreIntegration create(SpiServer server) { 019 return new NoneIntegration(); 020 } 021 022 @Override 023 public <T> DocStoreBeanAdapter<T> createAdapter(BeanDescriptor<T> desc, DeployBeanDescriptor<T> deploy) { 024 return new NoneDocStoreBeanAdapter<>(desc, deploy); 025 } 026 027 static class NoneIntegration implements DocStoreIntegration { 028 029 @Override 030 public DocStoreUpdateProcessor updateProcessor() { 031 return new NoneDocStoreUpdateProcessor(); 032 } 033 034 @Override 035 public DocumentStore documentStore() { 036 return new NoneDocStore(); 037 } 038 } 039}