2 * Copyright (C) 2010 Mathieu Baudier <mbaudier@argeo.org>
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org
.argeo
.slc
.core
.execution
.doc
;
19 import org
.springframework
.beans
.MutablePropertyValues
;
20 import org
.springframework
.beans
.PropertyValue
;
21 import org
.springframework
.beans
.factory
.config
.BeanDefinition
;
22 import org
.springframework
.beans
.factory
.support
.BeanDefinitionRegistry
;
24 public class ConsoleContextDescriber
implements ContextDescriber
{
25 public void describeContext(BeanDefinitionRegistry registry
) {
26 String
[] beanNames
= registry
.getBeanDefinitionNames();
27 for (String beanName
: beanNames
) {
28 log("\n## BEAN: " + beanName
);
29 describeBean(registry
.getBeanDefinition(beanName
));
33 public void describeBean(BeanDefinition beanDefinition
) {
34 log("BeanDefinition class: "+beanDefinition
.getClass());
36 for(String attr
:beanDefinition
.attributeNames()){
37 log(attr
+"="+beanDefinition
.getAttribute(attr
));
40 MutablePropertyValues pValues
= beanDefinition
.getPropertyValues();
41 for (PropertyValue pv
: pValues
.getPropertyValues()) {
42 log(pv
.getName() + "= (" + pv
.getValue().getClass() + ") "
47 protected void log(Object obj
){
48 System
.out
.println(obj
);