package sample1;
import org.springframework.beans.factory.*;

public class MessageBeanImpl implements MessageBean, BeanNameAware, BeanFactoryAware, 
InitializingBean, DisposableBean {
    
    private String greeting;
    private String beanName;
    private BeanFactory beanFactory;
    
    public MessageBeanImpl() {
        System.out.println("¨ç BeanÀÇ »ý¼ºÀÚ ½ÇÇà");
    }
    
    public void setGreeting(String greeting) {
        this.greeting = greeting;
        System.out.println("¨è ¼¼ÅÍ ¸Þ¼­µå ½ÇÇà");
    }
    
    public void setBeanName(String beanName) {
        System.out.println("¨é Bean¸í ÁöÁ¤");
        this.beanName = beanName;
        System.out.println(" -> " + beanName);
    }
    
    public void setBeanFactory(BeanFactory beanFactory) {
        System.out.println("¨ê BeanFactory ÁöÁ¤");
        this.beanFactory = beanFactory;
        System.out.println(" -> " +beanFactory.getClass());
    }
    
    public void init() {
        System.out.println("¨í ÃÊ±âÈ­ ¸Þ¼­µå ½ÇÇà");
    }
    
    public void destroy() {
        System.out.println("Á¾·á");
    }
    
    public void afterPropertiesSet() {
        System.out.println("¨ì ÇÁ·ÎÆÛÆ¼ ÁöÁ¤ ¿Ï·á");
    }
    
    public void sayHello() {
        System.out.println(greeting + beanName + "!");
    }
}