aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-server/src
diff options
context:
space:
mode:
authorFabrice Bellingard <bellingard@gmail.com>2011-12-14 16:45:32 +0100
committerFabrice Bellingard <bellingard@gmail.com>2011-12-14 16:45:32 +0100
commit7979e9dbfe01931c771f9fd8d13bc8a65cbb49d7 (patch)
treed0a999fb0f3b832f907b73bc305421a0c7db5c0d /sonar-server/src
parent9179fbeead620330cdaa5a8ab6291c893d95c571 (diff)
downloadsonarqube-7979e9dbfe01931c771f9fd8d13bc8a65cbb49d7.tar.gz
sonarqube-7979e9dbfe01931c771f9fd8d13bc8a65cbb49d7.zip
Sonar Persistence API refactoring
- Class mapped to tables should now be named "MyTableDto" - DTOs, DAOs and Mappers of a same concern should be packed in a single package, allowing to use package visibility amongst them. => org.sonar.persistence has been reorganized following those rules.
Diffstat (limited to 'sonar-server/src')
-rw-r--r--sonar-server/src/main/java/org/sonar/server/platform/Platform.java2
-rw-r--r--sonar-server/src/main/java/org/sonar/server/startup/RegisterProvidedDashboards.java56
-rw-r--r--sonar-server/src/test/java/org/sonar/server/startup/RegisterProvidedDashboardsTest.java82
3 files changed, 70 insertions, 70 deletions
diff --git a/sonar-server/src/main/java/org/sonar/server/platform/Platform.java b/sonar-server/src/main/java/org/sonar/server/platform/Platform.java
index 77c4395cd7c..3cdb47b9e21 100644
--- a/sonar-server/src/main/java/org/sonar/server/platform/Platform.java
+++ b/sonar-server/src/main/java/org/sonar/server/platform/Platform.java
@@ -50,10 +50,10 @@ import org.sonar.jpa.session.DatabaseSessionFactory;
import org.sonar.jpa.session.DatabaseSessionProvider;
import org.sonar.jpa.session.DefaultDatabaseConnector;
import org.sonar.jpa.session.ThreadLocalDatabaseSessionFactory;
+import org.sonar.persistence.DaoUtils;
import org.sonar.persistence.DatabaseMigrator;
import org.sonar.persistence.DefaultDatabase;
import org.sonar.persistence.MyBatis;
-import org.sonar.persistence.dao.DaoUtils;
import org.sonar.server.charts.ChartFactory;
import org.sonar.server.configuration.Backup;
import org.sonar.server.configuration.ProfilesManager;
diff --git a/sonar-server/src/main/java/org/sonar/server/startup/RegisterProvidedDashboards.java b/sonar-server/src/main/java/org/sonar/server/startup/RegisterProvidedDashboards.java
index 87af9748a50..96cb9f7fa50 100644
--- a/sonar-server/src/main/java/org/sonar/server/startup/RegisterProvidedDashboards.java
+++ b/sonar-server/src/main/java/org/sonar/server/startup/RegisterProvidedDashboards.java
@@ -34,11 +34,11 @@ import org.sonar.api.web.dashboard.Dashboard;
import org.sonar.api.web.dashboard.DashboardTemplate;
import org.sonar.api.web.dashboard.Widget;
import org.sonar.core.i18n.I18nManager;
-import org.sonar.persistence.dao.ActiveDashboardDao;
-import org.sonar.persistence.dao.DashboardDao;
-import org.sonar.persistence.dao.LoadedTemplateDao;
-import org.sonar.persistence.model.ActiveDashboard;
-import org.sonar.persistence.model.LoadedTemplate;
+import org.sonar.persistence.dashboard.ActiveDashboardDao;
+import org.sonar.persistence.dashboard.ActiveDashboardDto;
+import org.sonar.persistence.dashboard.DashboardDao;
+import org.sonar.persistence.template.LoadedTemplateDto;
+import org.sonar.persistence.template.LoadedTemplateDao;
import com.google.common.collect.Lists;
@@ -71,12 +71,12 @@ public final class RegisterProvidedDashboards {
TimeProfiler profiler = new TimeProfiler().start("Load provided dashboards");
// load the dashboards that need to be loaded
- ArrayList<org.sonar.persistence.model.Dashboard> loadedDashboards = Lists.newArrayList();
- org.sonar.persistence.model.Dashboard mainDashboard = null;
+ ArrayList<org.sonar.persistence.dashboard.DashboardDto> loadedDashboards = Lists.newArrayList();
+ org.sonar.persistence.dashboard.DashboardDto mainDashboard = null;
for (DashboardTemplate dashboardTemplate : dashboardTemplates) {
Dashboard dashboard = dashboardTemplate.createDashboard();
if (shouldBeLoaded(dashboard)) {
- org.sonar.persistence.model.Dashboard dashboardDataModel = loadDashboard(dashboard);
+ org.sonar.persistence.dashboard.DashboardDto dashboardDataModel = loadDashboard(dashboard);
if (MAIN_DASHBOARD_ID.equals(dashboard.getId())) {
mainDashboard = dashboardDataModel;
} else {
@@ -90,8 +90,8 @@ public final class RegisterProvidedDashboards {
profiler.stop();
}
- protected void activateDashboards(List<org.sonar.persistence.model.Dashboard> loadedDashboards,
- org.sonar.persistence.model.Dashboard mainDashboard) {
+ protected void activateDashboards(List<org.sonar.persistence.dashboard.DashboardDto> loadedDashboards,
+ org.sonar.persistence.dashboard.DashboardDto mainDashboard) {
int nextOrderIndex = 0;
if (mainDashboard != null) {
activateDashboard(mainDashboard, 1);
@@ -100,31 +100,31 @@ public final class RegisterProvidedDashboards {
nextOrderIndex = activeDashboardDao.selectMaxOrderIndexForNullUser() + 1;
}
Collections.sort(loadedDashboards, new DashboardComparator());
- for (org.sonar.persistence.model.Dashboard dashboard : loadedDashboards) {
- activateDashboard(dashboard, nextOrderIndex++);
+ for (org.sonar.persistence.dashboard.DashboardDto dashboardDto : loadedDashboards) {
+ activateDashboard(dashboardDto, nextOrderIndex++);
}
}
- private void activateDashboard(org.sonar.persistence.model.Dashboard dashboard, int index) {
- ActiveDashboard activeDashboard = new ActiveDashboard();
- activeDashboard.setDashboardId(dashboard.getId());
- activeDashboard.setOrderIndex(index);
- activeDashboardDao.insert(activeDashboard);
- LOGGER.info("New dashboard '" + dashboard.getName() + "' registered and activated.");
+ private void activateDashboard(org.sonar.persistence.dashboard.DashboardDto dashboardDto, int index) {
+ ActiveDashboardDto activeDashboardDto = new ActiveDashboardDto();
+ activeDashboardDto.setDashboardId(dashboardDto.getId());
+ activeDashboardDto.setOrderIndex(index);
+ activeDashboardDao.insert(activeDashboardDto);
+ LOGGER.info("New dashboard '" + dashboardDto.getName() + "' registered and activated.");
}
- protected org.sonar.persistence.model.Dashboard loadDashboard(Dashboard dashboard) {
- org.sonar.persistence.model.Dashboard dashboardDataModel = createDataModelFromExtension(dashboard);
+ protected org.sonar.persistence.dashboard.DashboardDto loadDashboard(Dashboard dashboard) {
+ org.sonar.persistence.dashboard.DashboardDto dashboardDataModel = createDataModelFromExtension(dashboard);
// save the new dashboard
dashboardDao.insert(dashboardDataModel);
// and save the fact that is has now already been loaded
- loadedTemplateDao.insert(new LoadedTemplate(dashboard.getId(), LoadedTemplate.DASHBOARD_TYPE));
+ loadedTemplateDao.insert(new LoadedTemplateDto(dashboard.getId(), LoadedTemplateDto.DASHBOARD_TYPE));
return dashboardDataModel;
}
- protected org.sonar.persistence.model.Dashboard createDataModelFromExtension(Dashboard dashboard) {
+ protected org.sonar.persistence.dashboard.DashboardDto createDataModelFromExtension(Dashboard dashboard) {
Date now = new Date();
- org.sonar.persistence.model.Dashboard dashboardDataModel = new org.sonar.persistence.model.Dashboard();
+ org.sonar.persistence.dashboard.DashboardDto dashboardDataModel = new org.sonar.persistence.dashboard.DashboardDto();
dashboardDataModel.setKey(dashboard.getId());
dashboardDataModel.setName(i18nManager.message(Locale.ENGLISH, "dashboard." + dashboard.getId() + ".name", dashboard.getName()));
dashboardDataModel.setDescription(dashboard.getDescription());
@@ -134,7 +134,7 @@ public final class RegisterProvidedDashboards {
dashboardDataModel.setUpdatedAt(now);
for (Widget widget : dashboard.getWidgets()) {
- org.sonar.persistence.model.Widget widgetDataModel = new org.sonar.persistence.model.Widget();
+ org.sonar.persistence.dashboard.WidgetDto widgetDataModel = new org.sonar.persistence.dashboard.WidgetDto();
widgetDataModel.setKey(widget.getId());
widgetDataModel.setName(i18nManager.message(Locale.ENGLISH, "widget." + widget.getId() + ".name", ""));
widgetDataModel.setColumnIndex(widget.getColumnIndex());
@@ -145,7 +145,7 @@ public final class RegisterProvidedDashboards {
dashboardDataModel.addWidget(widgetDataModel);
for (Entry<String, String> property : widget.getProperties().entrySet()) {
- org.sonar.persistence.model.WidgetProperty widgetPropertyDataModel = new org.sonar.persistence.model.WidgetProperty();
+ org.sonar.persistence.dashboard.WidgetPropertyDto widgetPropertyDataModel = new org.sonar.persistence.dashboard.WidgetPropertyDto();
widgetPropertyDataModel.setKey(property.getKey());
widgetPropertyDataModel.setValue(property.getValue());
widgetDataModel.addWidgetProperty(widgetPropertyDataModel);
@@ -156,12 +156,12 @@ public final class RegisterProvidedDashboards {
}
protected boolean shouldBeLoaded(Dashboard dashboard) {
- return loadedTemplateDao.selectByKeyAndType(dashboard.getId(), LoadedTemplate.DASHBOARD_TYPE) == null;
+ return loadedTemplateDao.selectByKeyAndType(dashboard.getId(), LoadedTemplateDto.DASHBOARD_TYPE) == null;
}
- protected static class DashboardComparator implements Comparator<org.sonar.persistence.model.Dashboard> {
+ protected static class DashboardComparator implements Comparator<org.sonar.persistence.dashboard.DashboardDto> {
- public int compare(org.sonar.persistence.model.Dashboard d1, org.sonar.persistence.model.Dashboard d2) {
+ public int compare(org.sonar.persistence.dashboard.DashboardDto d1, org.sonar.persistence.dashboard.DashboardDto d2) {
return d1.getName().compareTo(d2.getName());
}
diff --git a/sonar-server/src/test/java/org/sonar/server/startup/RegisterProvidedDashboardsTest.java b/sonar-server/src/test/java/org/sonar/server/startup/RegisterProvidedDashboardsTest.java
index 6973393972b..52919c27447 100644
--- a/sonar-server/src/test/java/org/sonar/server/startup/RegisterProvidedDashboardsTest.java
+++ b/sonar-server/src/test/java/org/sonar/server/startup/RegisterProvidedDashboardsTest.java
@@ -39,12 +39,12 @@ import org.junit.Test;
import org.sonar.api.web.dashboard.Dashboard;
import org.sonar.api.web.dashboard.DashboardTemplate;
import org.sonar.core.i18n.I18nManager;
-import org.sonar.persistence.dao.ActiveDashboardDao;
-import org.sonar.persistence.dao.DashboardDao;
-import org.sonar.persistence.dao.LoadedTemplateDao;
-import org.sonar.persistence.model.ActiveDashboard;
-import org.sonar.persistence.model.LoadedTemplate;
-import org.sonar.persistence.model.Widget;
+import org.sonar.persistence.dashboard.ActiveDashboardDao;
+import org.sonar.persistence.dashboard.ActiveDashboardDto;
+import org.sonar.persistence.dashboard.DashboardDao;
+import org.sonar.persistence.dashboard.WidgetDto;
+import org.sonar.persistence.template.LoadedTemplateDto;
+import org.sonar.persistence.template.LoadedTemplateDao;
import com.google.common.collect.Lists;
@@ -75,14 +75,14 @@ public class RegisterProvidedDashboardsTest {
@Test
public void testStart() throws Exception {
registerProvidedDashboards.start();
- verify(dashboardDao).insert(any(org.sonar.persistence.model.Dashboard.class));
- verify(loadedTemplateDao).insert(any(LoadedTemplate.class));
- verify(activeDashboardDao).insert(any(ActiveDashboard.class));
+ verify(dashboardDao).insert(any(org.sonar.persistence.dashboard.DashboardDto.class));
+ verify(loadedTemplateDao).insert(any(LoadedTemplateDto.class));
+ verify(activeDashboardDao).insert(any(ActiveDashboardDto.class));
}
@Test
public void testShouldNotBeLoaded() throws Exception {
- when(loadedTemplateDao.selectByKeyAndType("fake-dashboard", LoadedTemplate.DASHBOARD_TYPE)).thenReturn(new LoadedTemplate());
+ when(loadedTemplateDao.selectByKeyAndType("fake-dashboard", LoadedTemplateDto.DASHBOARD_TYPE)).thenReturn(new LoadedTemplateDto());
assertThat(registerProvidedDashboards.shouldBeLoaded(fakeDashboardTemplate.createDashboard()), is(false));
}
@@ -93,16 +93,16 @@ public class RegisterProvidedDashboardsTest {
@Test
public void shouldLoadDasboard() throws Exception {
- org.sonar.persistence.model.Dashboard dataModelDashboard = registerProvidedDashboards.loadDashboard(fakeDashboardTemplate
+ org.sonar.persistence.dashboard.DashboardDto dataModelDashboard = registerProvidedDashboards.loadDashboard(fakeDashboardTemplate
.createDashboard());
assertNotNull(dataModelDashboard);
verify(dashboardDao).insert(dataModelDashboard);
- verify(loadedTemplateDao).insert(eq(new LoadedTemplate("fake-dashboard", LoadedTemplate.DASHBOARD_TYPE)));
+ verify(loadedTemplateDao).insert(eq(new LoadedTemplateDto("fake-dashboard", LoadedTemplateDto.DASHBOARD_TYPE)));
}
@Test
public void shouldCreateDataModelFromExtension() {
- org.sonar.persistence.model.Dashboard dataModelDashboard = registerProvidedDashboards
+ org.sonar.persistence.dashboard.DashboardDto dataModelDashboard = registerProvidedDashboards
.createDataModelFromExtension(fakeDashboardTemplate.createDashboard());
assertThat(dataModelDashboard.getUserId(), is(nullValue()));
assertThat(dataModelDashboard.getKey(), is("fake-dashboard"));
@@ -113,52 +113,52 @@ public class RegisterProvidedDashboardsTest {
assertNotNull(dataModelDashboard.getCreatedAt());
assertNotNull(dataModelDashboard.getUpdatedAt());
- Widget widget = dataModelDashboard.getWidgets().iterator().next();
- assertThat(widget.getKey(), is("fake-widget"));
- assertThat(widget.getName(), is("Fake Widget"));
- assertThat(widget.getDescription(), is(nullValue()));
- assertThat(widget.getColumnIndex(), is(12));
- assertThat(widget.getRowIndex(), is(13));
- assertThat(widget.getConfigured(), is(true));
- assertNotNull(widget.getCreatedAt());
- assertNotNull(widget.getUpdatedAt());
-
- org.sonar.persistence.model.WidgetProperty widgetProperty = widget.getWidgetProperties().iterator().next();
- assertThat(widgetProperty.getKey(), is("fake-property"));
- assertThat(widgetProperty.getValue(), is("fake_metric"));
+ WidgetDto widgetDto = dataModelDashboard.getWidgets().iterator().next();
+ assertThat(widgetDto.getKey(), is("fake-widget"));
+ assertThat(widgetDto.getName(), is("Fake Widget"));
+ assertThat(widgetDto.getDescription(), is(nullValue()));
+ assertThat(widgetDto.getColumnIndex(), is(12));
+ assertThat(widgetDto.getRowIndex(), is(13));
+ assertThat(widgetDto.getConfigured(), is(true));
+ assertNotNull(widgetDto.getCreatedAt());
+ assertNotNull(widgetDto.getUpdatedAt());
+
+ org.sonar.persistence.dashboard.WidgetPropertyDto widgetPropertyDto = widgetDto.getWidgetProperties().iterator().next();
+ assertThat(widgetPropertyDto.getKey(), is("fake-property"));
+ assertThat(widgetPropertyDto.getValue(), is("fake_metric"));
}
@Test
public void shouldCompareDashboardForSorting() throws Exception {
- org.sonar.persistence.model.Dashboard d1 = mock(org.sonar.persistence.model.Dashboard.class);
+ org.sonar.persistence.dashboard.DashboardDto d1 = mock(org.sonar.persistence.dashboard.DashboardDto.class);
when(d1.getName()).thenReturn("Foo");
- org.sonar.persistence.model.Dashboard d2 = mock(org.sonar.persistence.model.Dashboard.class);
+ org.sonar.persistence.dashboard.DashboardDto d2 = mock(org.sonar.persistence.dashboard.DashboardDto.class);
when(d2.getName()).thenReturn("Bar");
- List<org.sonar.persistence.model.Dashboard> dashboards = Lists.newArrayList(d1, d2);
- Collections.sort(dashboards, new RegisterProvidedDashboards.DashboardComparator());
+ List<org.sonar.persistence.dashboard.DashboardDto> dashboardDtos = Lists.newArrayList(d1, d2);
+ Collections.sort(dashboardDtos, new RegisterProvidedDashboards.DashboardComparator());
- assertThat(dashboards.get(0).getName(), is("Bar"));
+ assertThat(dashboardDtos.get(0).getName(), is("Bar"));
}
@Test
public void shouldActivateAllDashboards() throws Exception {
- org.sonar.persistence.model.Dashboard d1 = mock(org.sonar.persistence.model.Dashboard.class);
+ org.sonar.persistence.dashboard.DashboardDto d1 = mock(org.sonar.persistence.dashboard.DashboardDto.class);
when(d1.getName()).thenReturn("Foo");
when(d1.getId()).thenReturn(14L);
- org.sonar.persistence.model.Dashboard d2 = mock(org.sonar.persistence.model.Dashboard.class);
+ org.sonar.persistence.dashboard.DashboardDto d2 = mock(org.sonar.persistence.dashboard.DashboardDto.class);
when(d2.getName()).thenReturn("Bar");
when(d2.getId()).thenReturn(16L);
- ArrayList<org.sonar.persistence.model.Dashboard> loadedDashboards = Lists.newArrayList(d1, d2);
+ ArrayList<org.sonar.persistence.dashboard.DashboardDto> loadedDashboards = Lists.newArrayList(d1, d2);
when(activeDashboardDao.selectMaxOrderIndexForNullUser()).thenReturn(4);
registerProvidedDashboards.activateDashboards(loadedDashboards, null);
- ActiveDashboard ad1 = new ActiveDashboard();
+ ActiveDashboardDto ad1 = new ActiveDashboardDto();
ad1.setDashboardId(16L);
ad1.setOrderIndex(5);
verify(activeDashboardDao).insert(eq(ad1));
- ActiveDashboard ad2 = new ActiveDashboard();
+ ActiveDashboardDto ad2 = new ActiveDashboardDto();
ad2.setDashboardId(14L);
ad2.setOrderIndex(6);
verify(activeDashboardDao).insert(eq(ad2));
@@ -166,21 +166,21 @@ public class RegisterProvidedDashboardsTest {
@Test
public void shouldActivateMainDashboard() throws Exception {
- org.sonar.persistence.model.Dashboard mainDashboard = mock(org.sonar.persistence.model.Dashboard.class);
+ org.sonar.persistence.dashboard.DashboardDto mainDashboard = mock(org.sonar.persistence.dashboard.DashboardDto.class);
when(mainDashboard.getName()).thenReturn("Main");
when(mainDashboard.getId()).thenReturn(1L);
- org.sonar.persistence.model.Dashboard d1 = mock(org.sonar.persistence.model.Dashboard.class);
+ org.sonar.persistence.dashboard.DashboardDto d1 = mock(org.sonar.persistence.dashboard.DashboardDto.class);
when(d1.getName()).thenReturn("Bar");
when(d1.getId()).thenReturn(16L);
- ArrayList<org.sonar.persistence.model.Dashboard> loadedDashboards = Lists.newArrayList(d1);
+ ArrayList<org.sonar.persistence.dashboard.DashboardDto> loadedDashboards = Lists.newArrayList(d1);
registerProvidedDashboards.activateDashboards(loadedDashboards, mainDashboard);
- ActiveDashboard ad1 = new ActiveDashboard();
+ ActiveDashboardDto ad1 = new ActiveDashboardDto();
ad1.setDashboardId(1L);
ad1.setOrderIndex(1);
verify(activeDashboardDao).insert(eq(ad1));
- ActiveDashboard ad2 = new ActiveDashboard();
+ ActiveDashboardDto ad2 = new ActiveDashboardDto();
ad2.setDashboardId(16L);
ad2.setOrderIndex(2);
verify(activeDashboardDao).insert(eq(ad2));