Revision aee16929
Added by Cherian Mathew about 9 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/component/ConceptRelationshipComposite.java | ||
---|---|---|
9 | 9 |
*/ |
10 | 10 |
package eu.etaxonomy.cdm.vaadin.component; |
11 | 11 |
|
12 |
import java.util.Arrays; |
|
12 | 13 |
import java.util.UUID; |
13 | 14 |
|
14 | 15 |
import org.json.JSONException; |
... | ... | |
36 | 37 |
import eu.etaxonomy.cdm.vaadin.session.ISelectionListener; |
37 | 38 |
import eu.etaxonomy.cdm.vaadin.session.SelectionEvent; |
38 | 39 |
import eu.etaxonomy.cdm.vaadin.util.CdmVaadinSessionUtilities; |
40 |
import eu.etaxonomy.cdm.vaadin.util.CdmVaadinUtilities; |
|
39 | 41 |
import eu.etaxonomy.cdm.vaadin.view.ConceptRelationshipView; |
40 | 42 |
import eu.etaxonomy.cdm.vaadin.view.IConceptRelationshipComponentListener; |
41 | 43 |
|
... | ... | |
60 | 62 |
private Button editButton; |
61 | 63 |
@AutoGenerated |
62 | 64 |
private Button newButton; |
63 |
|
|
64 | 65 |
private final IConceptRelationshipComponentListener listener; |
65 | 66 |
|
66 | 67 |
private IdUuidName fromTaxonIun; |
... | ... | |
126 | 127 |
null, |
127 | 128 |
Action.Create, |
128 | 129 |
view.getDirection()); |
130 |
setSelectedTaxonRelUuid(null); |
|
129 | 131 |
} |
130 | 132 |
}); |
131 | 133 |
} |
... | ... | |
140 | 142 |
selectedTaxonRelUuid, |
141 | 143 |
Action.Update, |
142 | 144 |
view.getDirection()); |
145 |
setSelectedTaxonRelUuid(null); |
|
143 | 146 |
} |
144 | 147 |
}); |
145 | 148 |
} |
... | ... | |
154 | 157 |
selectedTaxonRelUuid, |
155 | 158 |
Action.Delete, |
156 | 159 |
view.getDirection()); |
160 |
setSelectedTaxonRelUuid(null); |
|
157 | 161 |
} |
158 | 162 |
}); |
159 | 163 |
} |
... | ... | |
175 | 179 |
} |
176 | 180 |
|
177 | 181 |
private void enableControls(boolean enabled) { |
178 |
newButton.setEnabled(enabled); |
|
179 |
editButton.setEnabled(enabled); |
|
180 |
deleteButton.setEnabled(enabled); |
|
182 |
CdmVaadinUtilities.setEnabled(this, enabled, Arrays.asList(d3ConceptRelationShipTree)); |
|
181 | 183 |
} |
182 | 184 |
|
183 | 185 |
private void updateControls() { |
... | ... | |
200 | 202 |
fromTaxonIun = (IdUuidName)event.getSelectedObjects().get(0); |
201 | 203 |
view.setPrimaryStatusCompositeUuid((UUID)event.getSelectedObjects().get(1)); |
202 | 204 |
refreshRelationshipView(view.getDirection()); |
205 |
setSelectedTaxonRelUuid(null); |
|
203 | 206 |
updateControls(); |
204 | 207 |
} |
205 | 208 |
} |
src/main/java/eu/etaxonomy/cdm/vaadin/component/EditConceptRelationshipComposite.java | ||
---|---|---|
339 | 339 |
CdmVaadinUtilities.setEnabled(mainLayout, false, null); |
340 | 340 |
|
341 | 341 |
try { |
342 |
CdmVaadinUtilities.exec(new CdmVaadinOperation(200, cdmProgressComponent) {
|
|
342 |
CdmVaadinUtilities.exec(new CdmVaadinOperation(1000, cdmProgressComponent) {
|
|
343 | 343 |
@Override |
344 | 344 |
public boolean execute() { |
345 | 345 |
UUID relTypeUuid = presenter.getTaxonRTypeContainer().getUuid(conceptRComboBox.getValue()); |
src/main/java/eu/etaxonomy/cdm/vaadin/component/StatusComposite.java | ||
---|---|---|
156 | 156 |
|
157 | 157 |
|
158 | 158 |
|
159 |
public void setClassification(String classification) { |
|
160 |
if(classification == null) { |
|
161 |
return; |
|
162 |
} |
|
163 |
Object selectedClassificationId = listener.getClassificationId(classification); |
|
164 |
if(selectedClassificationId == null) { |
|
165 |
Notification.show("Classification named " + classification + " does not exist."); |
|
166 |
} else { |
|
167 |
classificationComboBox.setValue(selectedClassificationId); |
|
168 |
} |
|
169 |
} |
|
159 | 170 |
|
160 | 171 |
public void init() { |
161 | 172 |
taxaTreeTable.setSelectable(true); |
162 |
|
|
163 | 173 |
initClassificationComboBox(); |
164 | 174 |
} |
165 | 175 |
|
... | ... | |
168 | 178 |
} |
169 | 179 |
|
170 | 180 |
|
171 |
public void setTaxaTableEnabled(boolean enabled) { |
|
172 |
taxaTreeTable.setEnabled(enabled); |
|
173 |
} |
|
174 |
|
|
175 |
public void setTaxaTableSelectable(boolean isTaxaTableSelectable) { |
|
176 |
taxaTreeTable.setSelectable(isTaxaTableSelectable); |
|
177 |
} |
|
181 |
// public void setTaxaTableEnabled(boolean enabled) {
|
|
182 |
// taxaTreeTable.setEnabled(enabled);
|
|
183 |
// }
|
|
184 |
// |
|
185 |
// public void setTaxaTableSelectable(boolean isTaxaTableSelectable) {
|
|
186 |
// taxaTreeTable.setSelectable(isTaxaTableSelectable);
|
|
187 |
// }
|
|
178 | 188 |
|
179 | 189 |
public TreeTable getTaxaTreeTable() { |
180 | 190 |
return taxaTreeTable; |
src/main/java/eu/etaxonomy/cdm/vaadin/presenter/StatusPresenter.java | ||
---|---|---|
10 | 10 |
package eu.etaxonomy.cdm.vaadin.presenter; |
11 | 11 |
|
12 | 12 |
import java.sql.SQLException; |
13 |
import java.util.Collection; |
|
13 | 14 |
import java.util.UUID; |
14 | 15 |
|
16 |
import com.vaadin.data.util.filter.Compare; |
|
17 |
import com.vaadin.data.util.filter.Compare.Equal; |
|
18 |
|
|
15 | 19 |
import eu.etaxonomy.cdm.api.service.ITaxonService; |
16 | 20 |
import eu.etaxonomy.cdm.model.common.CdmBase; |
17 | 21 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
... | ... | |
61 | 65 |
return leafNodeTaxonContainer; |
62 | 66 |
} |
63 | 67 |
|
68 |
@Override |
|
69 |
public Object getClassificationId(String classification) { |
|
70 |
if(classification == null) { |
|
71 |
return null; |
|
72 |
} |
|
73 |
Equal cnameFilter = new Compare.Equal("titleCache", classification); |
|
74 |
classificationContainer.addContainerFilter(cnameFilter); |
|
75 |
Collection<?> itemIds = classificationContainer.getItemIds(); |
|
76 |
Object itemId = null; |
|
77 |
if(!itemIds.isEmpty()) { |
|
78 |
itemId = itemIds.iterator().next(); |
|
79 |
} |
|
80 |
classificationContainer.removeContainerFilter(cnameFilter); |
|
81 |
return itemId; |
|
82 |
} |
|
83 |
|
|
64 | 84 |
@Override |
65 | 85 |
public void refresh() { |
66 | 86 |
leafNodeTaxonContainer.refresh(); |
src/main/java/eu/etaxonomy/cdm/vaadin/ui/AbstractAuthenticatedUI.java | ||
---|---|---|
43 | 43 |
// Create and register the views |
44 | 44 |
Authentication authentication = (Authentication) VaadinSession.getCurrent().getAttribute("authentication"); |
45 | 45 |
|
46 |
doInit(); |
|
46 |
doInit(request);
|
|
47 | 47 |
|
48 | 48 |
if(ignoreAuthentication || (authentication != null && authentication.isAuthenticated())) { |
49 | 49 |
UI.getCurrent().getNavigator().navigateTo(getFirstViewName()); |
... | ... | |
52 | 52 |
} |
53 | 53 |
} |
54 | 54 |
|
55 |
protected abstract void doInit(); |
|
55 |
protected abstract void doInit(VaadinRequest request);
|
|
56 | 56 |
|
57 | 57 |
public abstract String getFirstViewName(); |
58 | 58 |
|
src/main/java/eu/etaxonomy/cdm/vaadin/ui/ConceptRelationshipUI.java | ||
---|---|---|
9 | 9 |
*/ |
10 | 10 |
package eu.etaxonomy.cdm.vaadin.ui; |
11 | 11 |
|
12 |
import java.util.logging.Logger; |
|
13 | 12 |
|
14 | 13 |
import javax.servlet.annotation.WebServlet; |
15 | 14 |
|
15 |
import org.apache.log4j.Logger; |
|
16 |
|
|
16 | 17 |
import com.vaadin.annotations.Theme; |
17 | 18 |
import com.vaadin.annotations.VaadinServletConfiguration; |
18 | 19 |
import com.vaadin.navigator.Navigator; |
20 |
import com.vaadin.server.VaadinRequest; |
|
19 | 21 |
import com.vaadin.server.VaadinServlet; |
20 | 22 |
import com.vaadin.ui.UI; |
21 | 23 |
|
... | ... | |
33 | 35 |
|
34 | 36 |
private static final String FIRST_VIEW = "editcr"; |
35 | 37 |
|
36 |
private final static Logger logger = |
|
37 |
Logger.getLogger(ConceptRelationshipUI.class.getName()); |
|
38 |
private final static Logger logger = Logger.getLogger(ConceptRelationshipUI.class); |
|
38 | 39 |
|
39 | 40 |
@WebServlet(value = {"/app/editcr/*"}, asyncSupported = true) |
40 |
@VaadinServletConfiguration(productionMode = false, ui = ConceptRelationshipUI.class, widgetset = "eu.etaxonomy.cdm.vaadin.AppWidgetSet")
|
|
41 |
@VaadinServletConfiguration(productionMode = true, ui = ConceptRelationshipUI.class, widgetset = "eu.etaxonomy.cdm.vaadin.AppWidgetSet")
|
|
41 | 42 |
public static class Servlet extends VaadinServlet { |
42 | 43 |
} |
43 | 44 |
|
44 | 45 |
@Override |
45 |
protected void doInit() { |
|
46 |
protected void doInit(VaadinRequest request) {
|
|
46 | 47 |
// FIXME: remove this when testing is done |
47 |
//setIgnoreAuthentication(true);
|
|
48 |
setIgnoreAuthentication(true); |
|
48 | 49 |
|
49 | 50 |
getPage().setTitle("Concept Relationship Editor"); |
50 |
ConceptRelationshipView crEditor = new ConceptRelationshipView(); |
|
51 |
logger.warn("original classification : " + request.getParameter("oc")); |
|
52 |
logger.warn("copy classification : " + request.getParameter("cc")); |
|
53 |
String oc = request.getParameter("oc"); |
|
54 |
String cc = request.getParameter("cc"); |
|
55 |
|
|
56 |
ConceptRelationshipView crEditor = new ConceptRelationshipView(oc,cc); |
|
51 | 57 |
UI.getCurrent().getNavigator().addView(FIRST_VIEW, crEditor); |
52 | 58 |
|
53 | 59 |
} |
src/main/java/eu/etaxonomy/cdm/vaadin/ui/DbStatusUI.java | ||
---|---|---|
6 | 6 |
import com.vaadin.annotations.Title; |
7 | 7 |
import com.vaadin.annotations.VaadinServletConfiguration; |
8 | 8 |
import com.vaadin.navigator.Navigator; |
9 |
import com.vaadin.server.VaadinRequest; |
|
9 | 10 |
import com.vaadin.ui.UI; |
10 | 11 |
|
11 | 12 |
import eu.etaxonomy.cdm.vaadin.presenter.dbstatus.DistributionSelectionPresenter; |
... | ... | |
31 | 32 |
|
32 | 33 |
|
33 | 34 |
@Override |
34 |
protected void doInit() { |
|
35 |
protected void doInit(VaadinRequest request) {
|
|
35 | 36 |
Navigator navigator = UI.getCurrent().getNavigator(); |
36 | 37 |
DistributionSelectionView dsv = new DistributionSelectionView(); |
37 | 38 |
new DistributionSelectionPresenter(dsv); |
src/main/java/eu/etaxonomy/cdm/vaadin/ui/StatusEditorUI.java | ||
---|---|---|
23 | 23 |
import com.vaadin.annotations.Theme; |
24 | 24 |
import com.vaadin.annotations.VaadinServletConfiguration; |
25 | 25 |
import com.vaadin.navigator.Navigator; |
26 |
import com.vaadin.server.VaadinRequest; |
|
26 | 27 |
import com.vaadin.server.VaadinServlet; |
27 | 28 |
import com.vaadin.ui.UI; |
28 | 29 |
|
... | ... | |
46 | 47 |
} |
47 | 48 |
|
48 | 49 |
@Override |
49 |
protected void doInit() { |
|
50 |
protected void doInit(VaadinRequest request) {
|
|
50 | 51 |
// FIXME: remove this when testing is done |
51 | 52 |
//setIgnoreAuthentication(true); |
52 | 53 |
|
src/main/java/eu/etaxonomy/cdm/vaadin/view/ConceptRelationshipView.java | ||
---|---|---|
58 | 58 |
private ConceptRelationshipComposite conceptRelationshipComposite; |
59 | 59 |
@AutoGenerated |
60 | 60 |
private StatusComposite statusCompositeLeft; |
61 |
|
|
62 | 61 |
private StatusComposite primaryStatusComposite, secondaryStatusComposite; |
63 | 62 |
|
64 | 63 |
private Direction direction; |
... | ... | |
69 | 68 |
* The constructor will not be automatically regenerated by the |
70 | 69 |
* visual editor. |
71 | 70 |
*/ |
72 |
public ConceptRelationshipView() { |
|
71 |
public ConceptRelationshipView(String oc, String cc) {
|
|
73 | 72 |
|
74 | 73 |
buildMainLayout(); |
75 | 74 |
setCompositionRoot(mainLayout); |
76 | 75 |
|
77 | 76 |
conceptRelationshipComposite.setView(this); |
78 |
conceptRelationshipComposite.setSizeFull(); |
|
79 |
|
|
77 |
//mainLayout.setSizeUndefined(); |
|
80 | 78 |
setPrimaryStatusCompositeUuid(statusCompositeLeft.getSelectedClassificationUuid()); |
81 | 79 |
direction = Direction.LEFT_RIGHT; |
82 | 80 |
CdmVaadinSessionUtilities.getCurrentBasicEventService().register(this); |
83 | 81 |
|
82 |
statusCompositeLeft.setClassification(oc); |
|
83 |
statusCompositeRight.setClassification(cc); |
|
84 |
|
|
84 | 85 |
initDropHandlers(); |
85 | 86 |
} |
86 | 87 |
|
... | ... | |
123 | 124 |
@Override |
124 | 125 |
public void onAction(BasicEvent event) { |
125 | 126 |
if(ConceptRelationshipComposite.UPDATE_START_ID.equals(event.getEventId())) { |
126 |
primaryStatusComposite.setTaxaTableEnabled(false);
|
|
127 |
secondaryStatusComposite.setTaxaTableSelectable(false);
|
|
127 |
primaryStatusComposite.getTaxaTreeTable().setEnabled(false);
|
|
128 |
secondaryStatusComposite.getTaxaTreeTable().setSelectable(false);
|
|
128 | 129 |
} |
129 | 130 |
if(ConceptRelationshipComposite.UPDATE_END_ID.equals(event.getEventId())) { |
130 |
primaryStatusComposite.setTaxaTableEnabled(true);
|
|
131 |
secondaryStatusComposite.setTaxaTableSelectable(true);
|
|
131 |
primaryStatusComposite.getTaxaTreeTable().setEnabled(true);
|
|
132 |
secondaryStatusComposite.getTaxaTreeTable().setSelectable(true);
|
|
132 | 133 |
} |
133 | 134 |
} |
134 | 135 |
|
135 |
@AutoGenerated |
|
136 |
private HorizontalLayout buildMainLayout() { |
|
137 |
// common part: create layout |
|
138 |
mainLayout = new HorizontalLayout(); |
|
139 |
mainLayout.setImmediate(false); |
|
140 |
mainLayout.setWidth("100%"); |
|
141 |
mainLayout.setHeight("100%"); |
|
142 |
mainLayout.setMargin(true); |
|
143 |
|
|
144 |
// top-level component properties |
|
145 |
setWidth("100.0%"); |
|
146 |
setHeight("100.0%"); |
|
147 |
|
|
148 |
// statusCompositeLeft |
|
149 |
statusCompositeLeft = new StatusComposite(); |
|
150 |
statusCompositeLeft.setImmediate(false); |
|
151 |
statusCompositeLeft.setWidth("-1px"); |
|
152 |
statusCompositeLeft.setHeight("-1px"); |
|
153 |
mainLayout.addComponent(statusCompositeLeft); |
|
154 |
|
|
155 |
// conceptRelationshipComposite |
|
156 |
conceptRelationshipComposite = new ConceptRelationshipComposite(); |
|
157 |
conceptRelationshipComposite.setImmediate(false); |
|
158 |
conceptRelationshipComposite.setWidth("-1px"); |
|
159 |
conceptRelationshipComposite.setHeight("-1px"); |
|
160 |
mainLayout.addComponent(conceptRelationshipComposite); |
|
161 |
mainLayout.setExpandRatio(conceptRelationshipComposite, 1.0f); |
|
162 |
mainLayout.setComponentAlignment(conceptRelationshipComposite, new Alignment(20)); |
|
163 |
|
|
164 |
// statusCompositeRight |
|
165 |
statusCompositeRight = new StatusComposite(); |
|
166 |
statusCompositeRight.setImmediate(false); |
|
167 |
statusCompositeRight.setWidth("-1px"); |
|
168 |
statusCompositeRight.setHeight("-1px"); |
|
169 |
mainLayout.addComponent(statusCompositeRight); |
|
170 |
|
|
171 |
return mainLayout; |
|
172 |
} |
|
173 |
|
|
174 | 136 |
private class ConceptRelationshipDropHandler implements DropHandler { |
175 | 137 |
|
176 | 138 |
private StatusComposite sourceSc; |
... | ... | |
234 | 196 |
} |
235 | 197 |
|
236 | 198 |
} |
199 |
|
|
200 |
@AutoGenerated |
|
201 |
private HorizontalLayout buildMainLayout() { |
|
202 |
// common part: create layout |
|
203 |
mainLayout = new HorizontalLayout(); |
|
204 |
mainLayout.setImmediate(false); |
|
205 |
mainLayout.setWidth("100%"); |
|
206 |
mainLayout.setHeight("100%"); |
|
207 |
mainLayout.setMargin(true); |
|
208 |
|
|
209 |
// top-level component properties |
|
210 |
setWidth("100.0%"); |
|
211 |
setHeight("100.0%"); |
|
212 |
|
|
213 |
// statusCompositeLeft |
|
214 |
statusCompositeLeft = new StatusComposite(); |
|
215 |
statusCompositeLeft.setImmediate(false); |
|
216 |
statusCompositeLeft.setWidth("-1px"); |
|
217 |
statusCompositeLeft.setHeight("-1px"); |
|
218 |
mainLayout.addComponent(statusCompositeLeft); |
|
219 |
|
|
220 |
// conceptRelationshipComposite |
|
221 |
conceptRelationshipComposite = new ConceptRelationshipComposite(); |
|
222 |
conceptRelationshipComposite.setImmediate(false); |
|
223 |
conceptRelationshipComposite.setWidth("-1px"); |
|
224 |
conceptRelationshipComposite.setHeight("-1px"); |
|
225 |
mainLayout.addComponent(conceptRelationshipComposite); |
|
226 |
mainLayout.setExpandRatio(conceptRelationshipComposite, 1.0f); |
|
227 |
mainLayout.setComponentAlignment(conceptRelationshipComposite, new Alignment(20)); |
|
228 |
|
|
229 |
// statusCompositeRight |
|
230 |
statusCompositeRight = new StatusComposite(); |
|
231 |
statusCompositeRight.setImmediate(false); |
|
232 |
statusCompositeRight.setWidth("-1px"); |
|
233 |
statusCompositeRight.setHeight("-1px"); |
|
234 |
mainLayout.addComponent(statusCompositeRight); |
|
235 |
|
|
236 |
return mainLayout; |
|
237 |
} |
|
237 | 238 |
} |
src/main/java/eu/etaxonomy/cdm/vaadin/view/IStatusComposite.java | ||
---|---|---|
106 | 106 |
* |
107 | 107 |
*/ |
108 | 108 |
public void refreshSynonymCache(); |
109 |
|
|
110 |
/** |
|
111 |
* @param classification |
|
112 |
* @return |
|
113 |
*/ |
|
114 |
public Object getClassificationId(String classification); |
|
109 | 115 |
} |
110 | 116 |
|
111 | 117 |
public void setListener(StatusComponentListener listener); |
src/main/resources/eu/etaxonomy/cdm/vaadin/jscomponent/lib/d3.conceptrelationshiptree_connector.js | ||
---|---|---|
8 | 8 |
var connector = this; |
9 | 9 |
var diagramElement = connector.getElement(); |
10 | 10 |
var margin = {top: 20, right: 120, bottom: 20, left: 120}, |
11 |
width = 960 - margin.right - margin.left,
|
|
12 |
height = 800 - margin.top - margin.bottom;
|
|
11 |
width = 740 - margin.right - margin.left,
|
|
12 |
height = 600 - margin.top - margin.bottom;
|
|
13 | 13 |
|
14 | 14 |
var i = 0, |
15 | 15 |
duration = 750, |
src/main/webapp/VAADIN/themes/edit/edit.scss | ||
---|---|---|
41 | 41 |
|
42 | 42 |
.cr-arrow .v-icon { |
43 | 43 |
color: #006666; |
44 |
font-size: 40px;
|
|
44 |
font-size: 30px;
|
|
45 | 45 |
} |
46 | 46 |
|
47 | 47 |
} |
src/main/webapp/VAADIN/themes/edit/styles.css | ||
---|---|---|
5899 | 5899 |
|
5900 | 5900 |
.edit .cr-arrow .v-icon { |
5901 | 5901 |
color: #006666; |
5902 |
font-size: 40px;
|
|
5902 |
font-size: 30px;
|
|
5903 | 5903 |
} |
src/test/java/eu/etaxonomy/cdm/vaadin/presenter/StatusPresenterTest.java | ||
---|---|---|
95 | 95 |
Assert.assertFalse(pb); |
96 | 96 |
} |
97 | 97 |
|
98 |
@Test |
|
99 |
public void testGetClassificationId() throws SQLException { |
|
100 |
CdmSQLContainer container = sp.loadClassifications(); |
|
101 |
Object classificationId = sp.getClassificationId("Classification1"); |
|
102 |
Assert.assertEquals("11", classificationId.toString()); |
|
103 |
classificationId = sp.getClassificationId("ClassificationDoesNotExist"); |
|
104 |
Assert.assertNull(classificationId); |
|
105 |
} |
|
106 |
|
|
98 | 107 |
@Ignore |
99 | 108 |
@Test |
100 | 109 |
public void testLoadClassifications() throws SQLException { |
src/test/java/eu/etaxonomy/cdm/vaadin/ui/NavigatorTestUI.java | ||
---|---|---|
7 | 7 |
import com.vaadin.annotations.Theme; |
8 | 8 |
import com.vaadin.annotations.VaadinServletConfiguration; |
9 | 9 |
import com.vaadin.navigator.Navigator; |
10 |
import com.vaadin.server.VaadinRequest; |
|
10 | 11 |
import com.vaadin.ui.UI; |
11 | 12 |
|
12 | 13 |
import eu.etaxonomy.cdm.vaadin.servlet.CdmVaadinConversationalServlet; |
... | ... | |
30 | 31 |
} |
31 | 32 |
|
32 | 33 |
@Override |
33 |
protected void doInit() { |
|
34 |
protected void doInit(VaadinRequest request) {
|
|
34 | 35 |
getPage().setTitle("Navigation Example"); |
35 | 36 |
NaviTestView ntv1 = new NaviTestView(); |
36 | 37 |
ntv1.setText("Congratulations! you have reached the first view. If you have got here without logging in there we are in trouble :)"); |
Also available in: Unified diff
ConceptRelationshipComposite : ui fixes for controls
EditConceptRelationshipComposite : changed polling interval to 1 sec
IStatusComposite, StatusComposite, StatusPresenter, ConceptRelationshipUI, ConceptRelationshipView : allowing setting of classifications via url parameters
StatusPresenterTest : testing method for getting
StatusEditorUI, DbStatusUI, AbstractAuthenticatedUI, NavigatorTestUI : exposing vaadin request to abstract init method
d3.conceptrelationshiptree_connector.js : changed size to work on smaller screens
edit.scss, styles.scss : corrected icon size