@Override public List<CodeRangeMetrics> getCodeRangeMetrics() { Map<String, MetricValue<?>> row = new HashMap<>(); row.put(KSLOC.getName(), new MetricValue<Double>(getKsloc(), KSLOC)); row.put(PERSON_MONTH.getName(), new MetricValue<Double>(getPersonMonth(), PERSON_MONTH)); row.put(PERSON_YEARS.getName(), new MetricValue<Double>(getPersonYears(), PERSON_YEARS)); row.put( SCHEDULED_MONTH.getName(), new MetricValue<Double>(getScheduledMonth(), SCHEDULED_MONTH)); row.put( SCHEDULED_YEARS.getName(), new MetricValue<Double>(getScheduledYears(), SCHEDULED_YEARS)); row.put(TEAM_SIZE.getName(), new MetricValue<Double>(getTeamSize(), TEAM_SIZE)); row.put(COSTS.getName(), new MetricValue<Double>(getEstimatedCosts(), COSTS)); row.put(SALARY.getName(), new MetricValue<Money>(getMoney(), SALARY)); row.put(AI.getName(), new MetricValue<Double>(getProject().getAi(), AI)); row.put(BI.getName(), new MetricValue<Double>(getProject().getBi(), BI)); row.put(CI.getName(), new MetricValue<Double>(getProject().getCi(), CI)); row.put(DI.getName(), new MetricValue<Double>(getProject().getDi(), DI)); List<CodeRangeMetrics> metrics = new ArrayList<>(); metrics.add( new CodeRangeMetrics( sourceCodeLocation, CodeRangeType.FILE, sourceCodeLocation.getName(), IntermediateCoCoMoEvaluatorParameter.ALL, row)); return metrics; }
@Override protected void init(VaadinRequest vaadinRequest) { // DI.addNewClassLoaderAndMerge(Service.class.getClassLoader()); // inject DI.getInstance().activateDI(this); final VerticalLayout layout = new VerticalLayout(); layout.setMargin(true); setContent(layout); Button button = new Button("Click Me"); button.addClickListener( event -> layout.addComponent(new Label("Thank you for clicking " + service.doWork()))); layout.addComponent(button); }