-- ******************************************************************************
-- Copyright (c) 2012 INRIA & Ecole des Mines de Nantes. 
-- All rights reserved. This program and the accompanying materials 
-- are made available under the terms of the Eclipse Public License v2.0 
-- which accompanies this distribution, and is available at
-- http://www.eclipse.org/legal/epl-v20.html
-- 
-- Contributors: 
-- 	Hugo Bruneliere - Initial implementation
--  
-- ******************************************************************************


module GenerateMetricsB;
create OUT : Metrics from IN : Java;


helper context Java!ClassDeclaration def: computePercentage(elementType : OclType) : Real =
	self.bodyDeclarations
		->select(d | d.oclIsTypeOf(elementType))->size()
		*100
		/self.bodyDeclarations->size();


rule CreateMetric {
	from
		cd : Java!ClassDeclaration (
			cd.annotations->exists(a | a.type.type.name='Entity')	
		)
	to
		om : Metrics!Metric (
			name <- 'Percentage of declaration/type in class "' + cd.name + '"',
			values <- Sequence{mv1,mv2,mv3}
		),
		mv1 : Metrics!DoubleMetricValue (
			tag <- 'Constructor',
			value <- cd.computePercentage(Java!ConstructorDeclaration)
		),
		mv2 : Metrics!DoubleMetricValue (
			tag <- 'Field',
			value <- cd.computePercentage(Java!FieldDeclaration)
		),
		mv3 : Metrics!DoubleMetricValue (
			tag <- 'Method',
			value <- cd.computePercentage(Java!MethodDeclaration)
		)
}
