// Path: app/src/main/java/com/example/dev_wang/databindingdemo/Module/AppFacade/Runs.java
// public abstract class Runs {
// 
//     //RunsUserLoginMediator
//     public static final String BIND_VIEW_COMPONENT = "BIND_VIEW_COMPONENT";
//     public static final String UNBUNDLED_VIEW_COMPONENT = "UNBUNDLED_VIEW_COMPONENT";
//     public static final String USER_LOGIN_NOTIFICATION = "USER_LOGIN_NOTIFICATION";
//     public static final String USER_LOGOUT_NOTIFICATION = "USER_LOGOUT_NOTIFICATION";
//     public static final String USER_REGISTER_NOTIFICATION = "USER_REGISTER_NOTIFICATION";
// 
//     //RunsUserRegisterMediatorUNLOCK
//     public static final String BIND_REGISTER_COMPONENT = "BIND_REGISTER_COMPONENT";
//     public static final String USER_BIND_PHONE_NOTIFICATION = "USER_BIND_PHONE_NOTIFICATION";
//     public static final String USER_REGISTER_DONE_NOTIFICATION = "USER_REGISTER_DONE_NOTIFICATION";
// 
// }
// 
// Path: puremvc_appfacade/src/main/java/com/example/puremvc_appfacade/Runs/Facade.java
// public enum Facade implements IFacade {
//     INSTANCE;
//     private IView iView = new View();
//     private IModel iModel = new Model();
//     private IController iController = null;
// 
//     @Override
//     public void init(IController controller) {
//         this.iController = controller;
//         this.registerAllModules();
//     }
// 
//     @Override
//     public void notifyObservers(INotification notification) {
//         iView.notifyObservers(notification);
//     }
// 
//     @Override
//     public void sendNotification(String name) {
//         sendNotification(name, null, null);
//     }
// 
//     @Override
//     public void sendNotification(String name, Object body) {
//         sendNotification(name, body, null);
//     }
// 
//     @Override
//     public void sendNotification(String name, String type) {
//         sendNotification(name, null, type);
//     }
// 
//     @Override
//     public void sendNotification(String name, Object body, String type) {
//         this.notifyObservers(Notification.init(name, body, type));
//     }
// 
//     @Override
//     public void registerMediatorWithName(String name, Class cls) {
//         iView.registerMediator(name, cls);
//     }
// 
//     @Override
//     public void removeMediatorWithName(String name) {
//         iView.removeMediator(name);
//     }
// 
//     @Override
//     public void registerViewModelWithName(String name, Class cls) {
//         iModel.registerViewModel(name, cls);
//     }
// 
//     @Override
//     public void removeViewModelWithName(String name) {
//         iModel.removeViewModel(name);
//     }
// 
//     @Override
//     public IMediator getMediatorWithName(String name) {
//         return iView.getMediator(name);
//     }
// 
//     @Override
//     public IViewModel getViewModelWithName(String name) {
//         return iModel.getViewModel(name);
//     }
// 
//     @Override
//     public boolean hasMediator(String name) {
//         return iView.hasMediator(name);
//     }
// 
//     @Override
//     public boolean hasViewModel(String name) {
//         return iModel.hasViewModel(name);
//     }
// 
//     @Override
//     public void registerAllModules() {
//         iController.registerAllModules();
//     }
// 
//     @Override
//     public void unRegisterAllModules() {
//         iController.unRegisterAllModules();
//     }
// 
//     @Override
//     public IModule getModule(String moduleName) {
//         return iController.getModule(moduleName);
//     }
// 
// }


import android.databinding.DataBindingUtil;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import com.example.dev_wang.databindingdemo.R;
import com.example.dev_wang.databindingdemo.databinding.ActivityRegisterBinding;
import com.example.dev_wang.databindingdemo.Module.AppFacade.Runs;
import com.example.puremvc_appfacade.Runs.Facade;
package com.example.dev_wang.databindingdemo.Module.Login.Activity;





/**
 * Created by dev_wang on 2017/1/24.
 */

public class RunsUserRegisterActivity extends AppCompatActivity {

    private ActivityRegisterBinding activityRegisterBinding = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.activityRegisterBinding = DataBindingUtil.setContentView(this, R.layout.activity_register);
        Facade.INSTANCE.sendNotification(Runs.BIND_REGISTER_COMPONENT, this);
        activityRegisterBinding.back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });

        activityRegisterBinding.bingPhone.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
// Path: app/src/main/java/com/example/dev_wang/databindingdemo/Module/AppFacade/Runs.java
// public abstract class Runs {
// 
//     //RunsUserLoginMediator
//     public static final String BIND_VIEW_COMPONENT = "BIND_VIEW_COMPONENT";
//     public static final String UNBUNDLED_VIEW_COMPONENT = "UNBUNDLED_VIEW_COMPONENT";
//     public static final String USER_LOGIN_NOTIFICATION = "USER_LOGIN_NOTIFICATION";
//     public static final String USER_LOGOUT_NOTIFICATION = "USER_LOGOUT_NOTIFICATION";
//     public static final String USER_REGISTER_NOTIFICATION = "USER_REGISTER_NOTIFICATION";
// 
//     //RunsUserRegisterMediatorUNLOCK
//     public static final String BIND_REGISTER_COMPONENT = "BIND_REGISTER_COMPONENT";
//     public static final String USER_BIND_PHONE_NOTIFICATION = "USER_BIND_PHONE_NOTIFICATION";
//     public static final String USER_REGISTER_DONE_NOTIFICATION = "USER_REGISTER_DONE_NOTIFICATION";
// 
// }
// 
// Path: puremvc_appfacade/src/main/java/com/example/puremvc_appfacade/Runs/Facade.java
// public enum Facade implements IFacade {
//     INSTANCE;
//     private IView iView = new View();
//     private IModel iModel = new Model();
//     private IController iController = null;
// 
//     @Override
//     public void init(IController controller) {
//         this.iController = controller;
//         this.registerAllModules();
//     }
// 
//     @Override
//     public void notifyObservers(INotification notification) {
//         iView.notifyObservers(notification);
//     }
// 
//     @Override
//     public void sendNotification(String name) {
//         sendNotification(name, null, null);
//     }
// 
//     @Override
//     public void sendNotification(String name, Object body) {
//         sendNotification(name, body, null);
//     }
// 
//     @Override
//     public void sendNotification(String name, String type) {
//         sendNotification(name, null, type);
//     }
// 
//     @Override
//     public void sendNotification(String name, Object body, String type) {
//         this.notifyObservers(Notification.init(name, body, type));
//     }
// 
//     @Override
//     public void registerMediatorWithName(String name, Class cls) {
//         iView.registerMediator(name, cls);
//     }
// 
//     @Override
//     public void removeMediatorWithName(String name) {
//         iView.removeMediator(name);
//     }
// 
//     @Override
//     public void registerViewModelWithName(String name, Class cls) {
//         iModel.registerViewModel(name, cls);
//     }
// 
//     @Override
//     public void removeViewModelWithName(String name) {
//         iModel.removeViewModel(name);
//     }
// 
//     @Override
//     public IMediator getMediatorWithName(String name) {
//         return iView.getMediator(name);
//     }
// 
//     @Override
//     public IViewModel getViewModelWithName(String name) {
//         return iModel.getViewModel(name);
//     }
// 
//     @Override
//     public boolean hasMediator(String name) {
//         return iView.hasMediator(name);
//     }
// 
//     @Override
//     public boolean hasViewModel(String name) {
//         return iModel.hasViewModel(name);
//     }
// 
//     @Override
//     public void registerAllModules() {
//         iController.registerAllModules();
//     }
// 
//     @Override
//     public void unRegisterAllModules() {
//         iController.unRegisterAllModules();
//     }
// 
//     @Override
//     public IModule getModule(String moduleName) {
//         return iController.getModule(moduleName);
//     }
// 
// }


// Path: app/src/main/java/com/example/dev_wang/databindingdemo/Module/Login/Activity/RunsUserRegisterActivity.java
import android.databinding.DataBindingUtil;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import com.example.dev_wang.databindingdemo.R;
import com.example.dev_wang.databindingdemo.databinding.ActivityRegisterBinding;
import com.example.dev_wang.databindingdemo.Module.AppFacade.Runs;
import com.example.puremvc_appfacade.Runs.Facade;

package com.example.dev_wang.databindingdemo.Module.Login.Activity;





/**
 * Created by dev_wang on 2017/1/24.
 */

public class RunsUserRegisterActivity extends AppCompatActivity {

    private ActivityRegisterBinding activityRegisterBinding = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.activityRegisterBinding = DataBindingUtil.setContentView(this, R.layout.activity_register);
        Facade.INSTANCE.sendNotification(Runs.BIND_REGISTER_COMPONENT, this);
        activityRegisterBinding.back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });

        activityRegisterBinding.bingPhone.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Facade.INSTANCE.sendNotification(Runs.USER_BIND_PHONE_NOTIFICATION);