refactor(gms): use BaseLocalDAO as the interface in factories & rest.li resources (#1979)

* refactor(gms): use BaseLocalDAO as the interface in factories & rest.li resources

Fixes #1974

* Revert yarn.lock change

Co-authored-by: Mars Lan <mars@trayminder.com>
This commit is contained in:
Mars Lan 2020-10-31 09:27:01 -07:00 committed by GitHub
parent 5a5c6863fa
commit ab03a4ee9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 10 additions and 9 deletions

View File

@ -3,6 +3,7 @@ package com.linkedin.gms.factory.dataprocess;
import com.linkedin.gms.factory.common.TopicConventionFactory;
import com.linkedin.common.urn.DataProcessUrn;
import com.linkedin.metadata.aspect.DataProcessAspect;
import com.linkedin.metadata.dao.BaseLocalDAO;
import com.linkedin.metadata.dao.EbeanLocalDAO;
import com.linkedin.metadata.dao.producer.KafkaMetadataEventProducer;
import com.linkedin.metadata.dao.producer.KafkaProducerCallback;
@ -26,7 +27,7 @@ public class DataProcessDAOFactory {
@Bean(name = "dataProcessDAO")
@DependsOn({"gmsEbeanServiceConfig", "kafkaEventProducer", TopicConventionFactory.TOPIC_CONVENTION_BEAN})
protected EbeanLocalDAO<DataProcessAspect, DataProcessUrn> createInstance() {
protected BaseLocalDAO<DataProcessAspect, DataProcessUrn> createInstance() {
KafkaMetadataEventProducer<DataProcessSnapshot, DataProcessAspect, DataProcessUrn> producer =
new KafkaMetadataEventProducer(DataProcessSnapshot.class, DataProcessAspect.class,
applicationContext.getBean(Producer.class), applicationContext.getBean(TopicConvention.class),

View File

@ -3,6 +3,7 @@ package com.linkedin.gms.factory.dataset;
import com.linkedin.gms.factory.common.TopicConventionFactory;
import com.linkedin.common.urn.DatasetUrn;
import com.linkedin.metadata.aspect.DatasetAspect;
import com.linkedin.metadata.dao.BaseLocalDAO;
import com.linkedin.metadata.dao.EbeanLocalDAO;
import com.linkedin.metadata.dao.producer.KafkaMetadataEventProducer;
import com.linkedin.metadata.dao.producer.KafkaProducerCallback;
@ -24,7 +25,7 @@ public class DatasetDaoFactory {
@Bean(name = "datasetDao")
@DependsOn({"gmsEbeanServiceConfig", "kafkaEventProducer", TopicConventionFactory.TOPIC_CONVENTION_BEAN})
protected EbeanLocalDAO<DatasetAspect, DatasetUrn> createInstance() {
protected BaseLocalDAO<DatasetAspect, DatasetUrn> createInstance() {
KafkaMetadataEventProducer<DatasetSnapshot, DatasetAspect, DatasetUrn> producer =
new KafkaMetadataEventProducer(DatasetSnapshot.class, DatasetAspect.class,
applicationContext.getBean(Producer.class), applicationContext.getBean(TopicConvention.class),

View File

@ -3,6 +3,7 @@ package com.linkedin.gms.factory.identity;
import com.linkedin.gms.factory.common.TopicConventionFactory;
import com.linkedin.common.urn.CorpGroupUrn;
import com.linkedin.metadata.aspect.CorpGroupAspect;
import com.linkedin.metadata.dao.BaseLocalDAO;
import com.linkedin.metadata.dao.EbeanLocalDAO;
import com.linkedin.metadata.dao.producer.KafkaMetadataEventProducer;
import com.linkedin.metadata.snapshot.CorpGroupSnapshot;
@ -26,7 +27,7 @@ public class CorpGroupDaoFactory {
@Bean(name = "corpGroupDao")
@DependsOn({"gmsEbeanServiceConfig", "kafkaEventProducer", TopicConventionFactory.TOPIC_CONVENTION_BEAN})
@Nonnull
protected EbeanLocalDAO createInstance() {
protected BaseLocalDAO<CorpGroupAspect, CorpGroupUrn> createInstance() {
KafkaMetadataEventProducer<CorpGroupSnapshot, CorpGroupAspect, CorpGroupUrn> producer =
new KafkaMetadataEventProducer(CorpGroupSnapshot.class, CorpGroupAspect.class,
applicationContext.getBean(Producer.class), applicationContext.getBean(TopicConvention.class));

View File

@ -3,6 +3,7 @@ package com.linkedin.gms.factory.identity;
import com.linkedin.gms.factory.common.TopicConventionFactory;
import com.linkedin.common.urn.CorpuserUrn;
import com.linkedin.metadata.aspect.CorpUserAspect;
import com.linkedin.metadata.dao.BaseLocalDAO;
import com.linkedin.metadata.dao.EbeanLocalDAO;
import com.linkedin.metadata.dao.producer.KafkaMetadataEventProducer;
import com.linkedin.metadata.snapshot.CorpUserSnapshot;
@ -26,7 +27,7 @@ public class CorpUserDaoFactory {
@Bean(name = "corpUserDao")
@DependsOn({"gmsEbeanServiceConfig", "kafkaEventProducer", TopicConventionFactory.TOPIC_CONVENTION_BEAN})
@Nonnull
protected EbeanLocalDAO createInstance() {
protected BaseLocalDAO<CorpUserAspect, CorpuserUrn> createInstance() {
KafkaMetadataEventProducer<CorpUserSnapshot, CorpUserAspect, CorpuserUrn> producer =
new KafkaMetadataEventProducer(CorpUserSnapshot.class, CorpUserAspect.class,
applicationContext.getBean(Producer.class), applicationContext.getBean(TopicConvention.class));

View File

@ -5,7 +5,6 @@ import com.linkedin.data.template.RecordTemplate;
import com.linkedin.dataprocess.DataProcessKey;
import com.linkedin.metadata.aspect.DataProcessAspect;
import com.linkedin.metadata.dao.BaseLocalDAO;
import com.linkedin.metadata.dao.EbeanLocalDAO;
import com.linkedin.metadata.restli.BaseVersionedAspectResource;
import com.linkedin.restli.common.ComplexResourceKey;
import com.linkedin.restli.common.EmptyRecord;
@ -27,7 +26,7 @@ public class BaseDataProcessesAspectResource<ASPECT extends RecordTemplate>
@Inject
@Named("dataProcessDAO")
private EbeanLocalDAO localDAO;
private BaseLocalDAO localDAO;
@Nonnull
@Override

View File

@ -5,7 +5,6 @@ import com.linkedin.data.template.RecordTemplate;
import com.linkedin.identity.CorpUserKey;
import com.linkedin.metadata.aspect.CorpUserAspect;
import com.linkedin.metadata.dao.BaseLocalDAO;
import com.linkedin.metadata.dao.EbeanLocalDAO;
import com.linkedin.metadata.restli.BaseVersionedAspectResource;
import com.linkedin.restli.common.ComplexResourceKey;
import com.linkedin.restli.common.EmptyRecord;
@ -28,7 +27,7 @@ public class BaseCorpUsersAspectResource<ASPECT extends RecordTemplate>
@Inject
@Named("corpUserDao")
private EbeanLocalDAO localDAO;
private BaseLocalDAO localDAO;
@Nonnull
@Override
@ -41,5 +40,4 @@ public class BaseCorpUsersAspectResource<ASPECT extends RecordTemplate>
protected CorpuserUrn getUrn(@PathKeysParam @Nonnull PathKeys keys) {
return new CorpuserUrn(keys.<ComplexResourceKey<CorpUserKey, EmptyRecord>>get(CORPUSER_KEY).getKey().getName());
}
}