core/metrics-core-service/src/main/java/org/hawkular/metrics/core/service/MetricsServiceImpl.java
@Override
    public Observable<Void> addTags(Metric<?> metric, Map<String, String> tags) {
        try {
            checkArgument(tags != null, "Missing tags");
            checkArgument(isValidTagMap(tags), "Invalid tags; tag key is required");
        } catch (Exception e) {
            return Observable.error(e);
        }

        return dataAccess.insertIntoMetricsTagsIndex(metric, tags).concatWith(dataAccess.addTags(metric, tags))
                .toList().map(l -> null);
    }
@Override
    public Observable<Void> addTags(Metric<?> metric, Map<String, String> tags) {
        try {
            checkArgument(tags != null, "Missing tags");
            checkArgument(isValidTagMap(tags), "Invalid tags; tag key is required");
        } catch (Exception e) {
            return Observable.error(e);
        }

        return dataAccess.insertIntoMetricsTagsIndex(metric, tags).concatWith(dataAccess.addTags(metric, tags))
                .toList().map(l -> null);
    }
@ Override public Observable < Void > addTags ( Metric < ? > metric , Map < String , String > tags ) { try { checkArgument ( tags != null , "Missing tags" ) ; checkArgument ( isValidTagMap ( tags ) , "Invalid tags; tag key is required" ) ; } catch ( Exception e ) { return Observable . error ( e ) ; } return dataAccess . insertIntoMetricsTagsIndex ( metric , tags ) . concatWith ( dataAccess . addTags ( metric , tags ) ) . toList ( ) . map ( l -> null ) ; }
functionality into a separate class.
functionality into a separate class .