diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-11-08 12:03:06 +0200 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-11-08 12:03:06 +0200 |
| commit | 5da415d6935bd6faa8c49db66f11015a8050bf4d (patch) | |
| tree | d2b124a77b4e46f8c7ea92fa2e15151fe4d0d6e5 /Software/Android_Studio/Tango.Stubs.UI/src/main/java | |
| parent | 65115888c2d2fd03522dd4b5243a6657e15a62f0 (diff) | |
| download | Tango-5da415d6935bd6faa8c49db66f11015a8050bf4d.tar.gz Tango-5da415d6935bd6faa8c49db66f11015a8050bf4d.zip | |
Moved android project and new project.
Visual Studio Timeout Task!
Diffstat (limited to 'Software/Android_Studio/Tango.Stubs.UI/src/main/java')
25 files changed, 0 insertions, 932 deletions
diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/App.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/App.java deleted file mode 100644 index 96b5b490d..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/App.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.twine.tango.stubs.ui; - -import com.twine.tango.sharedui.TangoApplication; -import com.twine.tango.stubs.ui.dagger.ApplicationComponent; -import com.twine.tango.stubs.ui.dagger.ApplicationModule; -import com.twine.tango.stubs.ui.dagger.DaggerApplicationComponent; - -/** - * Created by Roy on 11/6/2017. - */ - -public class App extends TangoApplication -{ - private ApplicationComponent appComponent; - - public ApplicationComponent getAppComponent() { - return appComponent; - } - - protected ApplicationComponent initDagger(App application) { - return DaggerApplicationComponent.builder().applicationModule(new ApplicationModule(application)).build(); - } - - @Override - public void onCreate() { - super.onCreate(); - - appComponent = initDagger(this); - } - - public static ApplicationComponent getComponent() { - return ((App) context).getAppComponent(); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/Events/LoginEvent.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/Events/LoginEvent.java deleted file mode 100644 index da5f62124..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/Events/LoginEvent.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.twine.tango.stubs.ui.Events; - -import com.twine.tango.models.User; - -/** - * Created by Roy on 11/7/2017. - */ - -public class LoginEvent { - - private User user; - - public LoginEvent(User user) { - this.user = user; - } - - public User getUser() { - return user; - } - - public void setUser(User user) { - this.user = user; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/Events/StubSelectedEvent.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/Events/StubSelectedEvent.java deleted file mode 100644 index 1c2826c25..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/Events/StubSelectedEvent.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.twine.tango.stubs.ui.Events; - -import com.twine.tango.stubs.AvailableStub; - -/** - * Created by Roy on 11/7/2017. - */ - -public class StubSelectedEvent { - - private AvailableStub stub; - - public AvailableStub getStub() { - return stub; - } - - public void setStub(AvailableStub stub) { - this.stub = stub; - } - - public StubSelectedEvent(AvailableStub stub) { - this.stub = stub; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ApplicationComponent.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ApplicationComponent.java deleted file mode 100644 index cbd61f9ee..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ApplicationComponent.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import com.twine.tango.stubs.ui.views.login.LoginFragment; -import com.twine.tango.stubs.ui.views.main.MainActivity; -import com.twine.tango.stubs.ui.views.main.MainActivityVM; -import com.twine.tango.stubs.ui.views.selection.SelectionFragment; -import com.twine.tango.stubs.ui.views.stub.StubFragment; -import com.twine.tango.stubs.ui.views.stubs.StubsFragment; - -import javax.inject.Singleton; - -import dagger.Component; - -/** - * Created by Roy on 11/6/2017. - */ - -@Singleton -@Component(modules = {ApplicationModule.class, ViewModelsModule.class, EventBusModule.class, NotificationModule.class, NavigationModule.class, IntegrationModule.class}) -public interface ApplicationComponent -{ - - void inject(MainActivity view); - - void inject(LoginFragment view); - - void inject(SelectionFragment view); - - void inject(StubsFragment view); - - void inject(StubFragment view); - - MainActivityVM provideMainActivityVM(); -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ApplicationModule.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ApplicationModule.java deleted file mode 100644 index ce664f835..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ApplicationModule.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import android.app.Application; -import android.content.Context; - -import javax.inject.Singleton; - -import dagger.Module; -import dagger.Provides; - -/** - * Created by Roy on 11/6/2017. - */ - -@Module -public class ApplicationModule { - - private Application application; - - public ApplicationModule(Application application) { - this.application = application; - } - - @Provides - @Singleton - public Context provideContext() - { - return application; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/EventBusModule.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/EventBusModule.java deleted file mode 100644 index 3aeb461f7..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/EventBusModule.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import com.squareup.otto.Bus; -import com.squareup.otto.ThreadEnforcer; - -import javax.inject.Singleton; - -import dagger.Module; -import dagger.Provides; - -/** - * Created by Roy on 11/6/2017. - */ - -@Module -public class EventBusModule { - - @Provides - @Singleton - public Bus provideEventBus() - { - return new Bus(ThreadEnforcer.MAIN); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/IntegrationModule.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/IntegrationModule.java deleted file mode 100644 index 7fd86f537..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/IntegrationModule.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import com.twine.tango.integration.operators.IMachineOperator; -import com.twine.tango.integration.operators.MachineOperator; -import com.twine.tango.integration.providers.IMachineIdentityProvider; -import com.twine.tango.integration.providers.MachineIdentityProvider; -import com.twine.tango.integration.services.IExternalBridgeService; -import com.twine.tango.integration.services.ISynchronizationService; -import com.twine.tango.integration.services.ExternalBridgeService; -import com.twine.tango.integration.services.SynchronizationService; -import com.twine.tango.transport.adapters.TcpTransportAdapter; -import com.twine.tango.transport.adapters.UsbTransportAdapter; - -import javax.inject.Singleton; -import dagger.Module; -import dagger.Provides; - -/** - * Created by Roy on 11/6/2017. - */ -@Module -public class IntegrationModule -{ - @Provides - @Singleton - public IExternalBridgeService provideBridgeService(IMachineIdentityProvider machineIdentityProvider,IMachineOperator machineOperator) - { - return new ExternalBridgeService(machineIdentityProvider,machineOperator); - } - - @Provides - @Singleton - public ISynchronizationService provideSynchronizationService(IMachineIdentityProvider machineIdentityProvider, IExternalBridgeService bridgeService) - { - return new SynchronizationService(machineIdentityProvider, bridgeService); - } - - @Provides - @Singleton - public IMachineIdentityProvider provideMachineIdentityProvider() - { - return new MachineIdentityProvider(); - } - - @Provides - @Singleton - public IMachineOperator providerMachineOperator() - { - //return new MachineOperator(new TcpTransportAdapter("10.0.2.2", 9999)); - return new MachineOperator(new UsbTransportAdapter()); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/NavigationModule.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/NavigationModule.java deleted file mode 100644 index 674157858..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/NavigationModule.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import android.content.Context; -import com.twine.tango.sharedui.navigation.AndroidNavigationProvider; -import com.twine.tango.sharedui.navigation.INavigationProvider; -import javax.inject.Singleton; - -import dagger.Module; -import dagger.Provides; - -@Module -public class NavigationModule -{ - @Provides - @Singleton - public INavigationProvider provideNavigation() - { - return new AndroidNavigationProvider(); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/NotificationModule.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/NotificationModule.java deleted file mode 100644 index 69d6d8f62..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/NotificationModule.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import android.content.Context; - -import com.twine.tango.sharedui.notifications.AndroidNotificationProvider; -import com.twine.tango.sharedui.notifications.INotificationProvider; - -import javax.inject.Singleton; - -import dagger.Module; -import dagger.Provides; - -/** - * Created by Roy on 11/6/2017. - */ - -@Module -public class NotificationModule { - - @Provides - @Singleton - public INotificationProvider provideNotificationProvider(Context context) - { - return new AndroidNotificationProvider(context); - } - -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ViewModelsModule.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ViewModelsModule.java deleted file mode 100644 index b7e494ecf..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/dagger/ViewModelsModule.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.twine.tango.stubs.ui.dagger; - -import com.squareup.otto.Bus; -import com.twine.tango.integration.operators.IMachineOperator; -import com.twine.tango.integration.services.IExternalBridgeService; -import com.twine.tango.integration.services.ISynchronizationService; -import com.twine.tango.sharedui.navigation.INavigationProvider; -import com.twine.tango.sharedui.notifications.INotificationProvider; -import com.twine.tango.stubs.ui.views.login.LoginFragmentVM; -import com.twine.tango.stubs.ui.views.main.MainActivityVM; -import com.twine.tango.stubs.ui.views.selection.SelectionFragmentVM; -import com.twine.tango.stubs.ui.views.stub.StubFragmentVM; -import com.twine.tango.stubs.ui.views.stubs.StubsFragmentVM; -import com.twine.tango.transport.ITransportAdapter; -import com.twine.tango.transport.ITransporter; - -import javax.inject.Singleton; - -import dagger.Module; -import dagger.Provides; - -/** - * Created by Roy on 11/6/2017. - */ - -@Module -public class ViewModelsModule -{ - - @Provides - @Singleton - public MainActivityVM provideMainActivityVM(Bus eventBus, INotificationProvider notificationProvider, INavigationProvider navigationProvider, IMachineOperator machineOperator, ISynchronizationService synchronizationService, IExternalBridgeService externalBridgeService) - { - return new MainActivityVM(eventBus, notificationProvider, navigationProvider, machineOperator, externalBridgeService, synchronizationService); - } - - @Provides - @Singleton - public LoginFragmentVM provideLoginFragmentVM(Bus eventBus, INotificationProvider notificationProvider) - { - return new LoginFragmentVM(eventBus, notificationProvider); - } - - @Provides - @Singleton - public SelectionFragmentVM provideSelectionFragmentVM(INavigationProvider navigationProvider) - { - return new SelectionFragmentVM(navigationProvider); - } - - @Provides - @Singleton - public StubsFragmentVM provideStubsFragmentVM(Bus eventBus, INavigationProvider navigationProvider) - { - return new StubsFragmentVM(eventBus, navigationProvider); - } - - @Provides - @Singleton - public StubFragmentVM provideStubFragmentVM(Bus eventBus, INotificationProvider notificationProvider, IMachineOperator machineOperator) - { - return new StubFragmentVM(eventBus, notificationProvider, machineOperator); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/ILoginFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/ILoginFragment.java deleted file mode 100644 index f5ab3ec4b..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/ILoginFragment.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.twine.tango.stubs.ui.views.login; - -import com.twine.tango.sharedui.mvvm.IView; - -/** - * Created by Roy on 11/6/2017. - */ - -public interface ILoginFragment extends IView -{ -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/LoginFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/LoginFragment.java deleted file mode 100644 index 267977ede..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/LoginFragment.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.twine.tango.stubs.ui.views.login; - -import android.support.v4.app.Fragment; -import android.widget.EditText; - -import com.mobsandgeeks.saripaar.annotation.Email; -import com.mobsandgeeks.saripaar.annotation.Password; -import com.twine.tango.sharedui.containers.FragmentBase; -import com.twine.tango.stubs.ui.App; -import com.twine.tango.stubs.ui.R; -import com.twine.tango.stubs.ui.databinding.FragmentLoginBinding; - -import butterknife.BindView; - -/** - * A simple {@link Fragment} subclass. - */ -public class LoginFragment extends FragmentBase<FragmentLoginBinding, LoginFragmentVM> implements ILoginFragment -{ - - @BindView(R.id.txtEmail) - @Email(message = "Please enter a valid email address") - EditText txtEmail; - - @BindView(R.id.txtPassword) - @Password(message = "Please enter a valid password", scheme = Password.Scheme.NUMERIC, min = 4) - EditText txtPassword; - - public LoginFragment() { - // Required empty public constructor - } - - @Override - protected int getLayoutId() { - return R.layout.fragment_login; - } - - @Override - protected void inject() { - App.getComponent().inject(this); - } - - @Override - public String getTitle() { - return "LOGIN"; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/LoginFragmentVM.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/LoginFragmentVM.java deleted file mode 100644 index 2701aa63d..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/login/LoginFragmentVM.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.twine.tango.stubs.ui.views.login; - -import com.squareup.otto.Bus; -import com.twine.tango.models.User; -import com.twine.tango.sharedui.mvvm.DependencyProperty; -import com.twine.tango.sharedui.mvvm.RelayCommand; -import com.twine.tango.sharedui.mvvm.ViewModelBase; -import com.twine.tango.sharedui.notifications.INotificationProvider; -import com.twine.tango.stubs.ui.Events.LoginEvent; - -import javax.inject.Inject; - -/** - * Created by Roy on 11/6/2017. - */ - -public class LoginFragmentVM extends ViewModelBase<ILoginFragment> { - - private Bus eventBus; - private INotificationProvider notificationProvider; - - public DependencyProperty<String> email; - public DependencyProperty<String> password; - - public RelayCommand loginCommand; - - @Inject - public LoginFragmentVM(Bus eventBus, INotificationProvider notificationProvider) { - this.eventBus = eventBus; - this.notificationProvider = notificationProvider; - - email = new DependencyProperty<>("", (dp, value) -> loginCommand.invalidateCommand()); - password = new DependencyProperty<>("", (dp, value) -> loginCommand.invalidateCommand()); - loginCommand = new RelayCommand(this::login, () -> !email.get().isEmpty() && !password.get().isEmpty()); - - this.eventBus.register(this); - } - - private void login() { - - view.validateFields((valid) -> { - - if (valid) { - eventBus.post(new LoginEvent(new User(email.get(), password.get()))); - } - - }); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/IMainActivity.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/IMainActivity.java deleted file mode 100644 index 57d550763..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/IMainActivity.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.twine.tango.stubs.ui.views.main; - -import com.twine.tango.sharedui.mvvm.IView; - -/** - * Created by Roy on 11/6/2017. - */ - -public interface IMainActivity extends IView -{ - - enum Navigation - { - Login, - Selection, - Stubs, - Stub - } - -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/MainActivity.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/MainActivity.java deleted file mode 100644 index c1f85b971..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/MainActivity.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.twine.tango.stubs.ui.views.main; - -import android.app.Fragment; -import android.os.Bundle; -import android.support.v4.widget.DrawerLayout; -import android.support.v7.app.ActionBar; -import android.support.v7.app.ActionBarDrawerToggle; -import android.view.View; - -import com.twine.tango.core.ContextHelper; -import com.twine.tango.sharedui.containers.ActivityBase; -import com.twine.tango.sharedui.navigation.INavigationProvider; -import com.twine.tango.stubs.ui.App; -import com.twine.tango.stubs.ui.R; -import com.twine.tango.stubs.ui.databinding.ActivityMainBinding; - -import javax.inject.Inject; - -public class MainActivity extends ActivityBase<ActivityMainBinding, MainActivityVM> implements IMainActivity -{ - - private ActionBarDrawerToggle mDrawerToggle; - private Fragment currentFragment; - - @Inject - public INavigationProvider navigationProvider; - - @Override - protected void onCreate(Bundle savedInstanceState) - { - ContextHelper.registerMainActivity(this); - - super.onCreate(savedInstanceState); - - navigationProvider.registerNavigationActivity(this, R.id.fragment_container, "com.twine.tango.stubs.ui.views"); - - navigationProvider.navigateTo(Navigation.Login); - - setSupportActionBar(findViewById(R.id.toolbar1)); - initializeSideMenu(); - } - - @Override - protected int getLayoutId() - { - return R.layout.activity_main; - } - - @Override - protected void inject() - { - App.getComponent().inject(this); - } - - private void initializeSideMenu() { - final ActionBar actionBar = getSupportActionBar(); - if (actionBar != null) { - actionBar.setDisplayHomeAsUpEnabled(true); - actionBar.setDisplayShowHomeEnabled(true); - actionBar.setTitle("Tango"); - mDrawerToggle = new ActionBarDrawerToggle(this, findViewById(R.id.drawerLayout), findViewById(R.id.toolbar1), R.string.app_name, R.string.app_name) { - - public void onDrawerClosed(View view) { - supportInvalidateOptionsMenu(); - //drawerOpened = false; - } - - public void onDrawerOpened(View drawerView) { - supportInvalidateOptionsMenu(); - //drawerOpened = true; - } - }; - - mDrawerToggle.setDrawerIndicatorEnabled(true); - ((DrawerLayout) findViewById(R.id.drawerLayout)).addDrawerListener(mDrawerToggle); - mDrawerToggle.syncState(); - } - } - - @Override - public boolean onSupportNavigateUp() - { - onBackPressed(); - return true; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/MainActivityVM.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/MainActivityVM.java deleted file mode 100644 index 0357fee18..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/main/MainActivityVM.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.twine.tango.stubs.ui.views.main; - -import com.squareup.otto.Bus; -import com.squareup.otto.Subscribe; -import com.twine.tango.dal.dao.TangoDAO; -import com.twine.tango.dal.entities.ActionType; -import com.twine.tango.dal.entities.Contact; -import com.twine.tango.integration.operators.IMachineOperator; -import com.twine.tango.integration.services.IExternalBridgeService; -import com.twine.tango.integration.services.ISynchronizationService; -import com.twine.tango.models.User; -import com.twine.tango.sharedui.mvvm.DependencyProperty; -import com.twine.tango.sharedui.mvvm.RelayCommand; -import com.twine.tango.sharedui.mvvm.ViewModelBase; -import com.twine.tango.sharedui.navigation.INavigationProvider; -import com.twine.tango.sharedui.notifications.INotificationProvider; -import com.twine.tango.stubs.ui.Events.LoginEvent; -import com.twine.tango.stubs.ui.views.main.IMainActivity.Navigation; -import com.twine.tango.transport.TransportComponentState; - -import java.io.IOException; -import java.util.Random; - -import javax.inject.Inject; - -import io.reactivex.android.schedulers.AndroidSchedulers; - -public class MainActivityVM extends ViewModelBase<IMainActivity> -{ - - private Bus eventBus; - private User currentUser; - private INotificationProvider notificationProvider; - private INavigationProvider navigationProvider; - private IMachineOperator machineOperator; - private ISynchronizationService synchronizationService; - private IExternalBridgeService externalBridgeService; - - public DependencyProperty<Boolean> isConnected; - - public RelayCommand connectCommand; - public RelayCommand disconnectCommand; - - - @Inject - public MainActivityVM(Bus eventBus, INotificationProvider notificationProvider, INavigationProvider navigationProvider, IMachineOperator machineOperator, IExternalBridgeService externalBridgeService, ISynchronizationService synchronizationService) - { - this.eventBus = eventBus; - this.notificationProvider = notificationProvider; - this.navigationProvider = navigationProvider; - this.machineOperator = machineOperator; - this.synchronizationService = synchronizationService; - this.externalBridgeService = externalBridgeService; - this.eventBus.register(this); - - isConnected = new DependencyProperty<>(false); - - connectCommand = new RelayCommand(this::connect, () -> this.machineOperator.getState() != TransportComponentState.Connected); - disconnectCommand = new RelayCommand(this::disconnect, () -> this.machineOperator.getState() == TransportComponentState.Connected); - - this.machineOperator.addStateChangedListener((sender, e) -> - isConnected.set(this.machineOperator.getState() == TransportComponentState.Connected)); - - try - { - externalBridgeService.start(); - } - catch (IOException e) - { - e.printStackTrace(); - } - - Contact a = TangoDAO.getAllMachines().get(0).getOrganization().getContact(); - a.setPhoneNumber(String.valueOf(new Random().nextInt(1000))); - a.save().subscribe(); - } - - private void connect() - { - machineOperator.connect().observeOn(AndroidSchedulers.mainThread()).subscribe(() -> - invalidateCommands(), (ex) -> - notificationProvider.showMessage(view, "Could not connect the Transporter.")); - } - - private void disconnect() - { - machineOperator.disconnect().observeOn(AndroidSchedulers.mainThread()).subscribe(() -> - invalidateCommands(), (ex) -> - notificationProvider.showMessage(view, "Could not disconnect the Transporter.")); - } - - @Subscribe - public void loginEventHandler(LoginEvent e) - { - currentUser = e.getUser(); - navigationProvider.navigateTo(Navigation.Selection); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/ISelectionFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/ISelectionFragment.java deleted file mode 100644 index bab0f1782..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/ISelectionFragment.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.twine.tango.stubs.ui.views.selection; - -import com.twine.tango.sharedui.mvvm.IView; - -/** - * Created by Roy on 11/6/2017. - */ - -public interface ISelectionFragment extends IView -{ - -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/SelectionFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/SelectionFragment.java deleted file mode 100644 index ed1f85f55..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/SelectionFragment.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.twine.tango.stubs.ui.views.selection; - - -import android.content.Intent; -import android.support.v4.app.Fragment; - -import com.twine.tango.sharedui.containers.FragmentBase; -import com.twine.tango.stubs.ui.App; -import com.twine.tango.stubs.ui.R; -import com.twine.tango.stubs.ui.databinding.FragmentSelectionBinding; -import com.twine.tango.stubs.ui.views.stubs.StubsFragment; - -/** - * A simple {@link Fragment} subclass. - */ -public class SelectionFragment extends FragmentBase<FragmentSelectionBinding, SelectionFragmentVM> implements ISelectionFragment -{ - - - public SelectionFragment() { - // Required empty public constructor - } - - @Override - protected int getLayoutId() { - return R.layout.fragment_selection; - } - - @Override - protected void inject() { - App.getComponent().inject(this); - } - - @Override - public String getTitle() { - return "Selection"; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/SelectionFragmentVM.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/SelectionFragmentVM.java deleted file mode 100644 index 6eeac9a86..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/selection/SelectionFragmentVM.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.twine.tango.stubs.ui.views.selection; - -import com.twine.tango.sharedui.mvvm.RelayCommand; -import com.twine.tango.sharedui.mvvm.ViewModelBase; -import com.twine.tango.sharedui.navigation.INavigationProvider; -import com.twine.tango.stubs.ui.views.main.IMainActivity.Navigation; - -import javax.inject.Inject; - -/** - * Created by Roy on 11/6/2017. - */ - -public class SelectionFragmentVM extends ViewModelBase<ISelectionFragment> { - - private INavigationProvider navigationProvider; - - public RelayCommand openStubsCommand; - public RelayCommand openDataBaseCommand; - - @Inject - public SelectionFragmentVM(INavigationProvider navigationProvider) { - - this.navigationProvider = navigationProvider; - - openStubsCommand = new RelayCommand(() -> this.navigationProvider.navigateTo(Navigation.Stubs)); - openDataBaseCommand = new RelayCommand(() -> this.navigationProvider.navigateTo(Navigation.Stubs)); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/IStubFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/IStubFragment.java deleted file mode 100644 index bf63e15c8..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/IStubFragment.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.twine.tango.stubs.ui.views.stub; - -import com.twine.tango.sharedui.mvvm.IView; - -/** - * Created by Roy on 11/7/2017. - */ - -public interface IStubFragment extends IView -{ -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/StubFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/StubFragment.java deleted file mode 100644 index 48f9a1ccd..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/StubFragment.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.twine.tango.stubs.ui.views.stub; - -import com.twine.tango.sharedui.containers.FragmentBase; -import com.twine.tango.stubs.ui.App; -import com.twine.tango.stubs.ui.R; -import com.twine.tango.stubs.ui.databinding.ActivityStubBinding; - -public class StubFragment extends FragmentBase<ActivityStubBinding,StubFragmentVM> -{ - - @Override - protected int getLayoutId() { - return R.layout.activity_stub; - } - - @Override - protected void inject() { - App.getComponent().inject(this); - } - - @Override - public String getTitle() - { - return "Stubs"; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/StubFragmentVM.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/StubFragmentVM.java deleted file mode 100644 index f490ccee6..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stub/StubFragmentVM.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.twine.tango.stubs.ui.views.stub; - -import com.squareup.otto.Bus; -import com.squareup.otto.Subscribe; -import com.twine.tango.integration.operators.IMachineOperator; -import com.twine.tango.sharedui.mvvm.RelayCommand; -import com.twine.tango.sharedui.notifications.INotificationProvider; -import com.twine.tango.stubs.AvailableStub; -import com.twine.tango.sharedui.mvvm.DependencyProperty; -import com.twine.tango.sharedui.mvvm.ViewModelBase; -import com.twine.tango.stubs.StubBase; -import com.twine.tango.stubs.ui.Events.StubSelectedEvent; -import com.twine.tango.transport.ITransporter; - -import javax.inject.Inject; - -import io.reactivex.android.schedulers.AndroidSchedulers; - -/** - * Created by Roy on 11/7/2017. - */ - -public class StubFragmentVM extends ViewModelBase<IStubFragment> -{ - private Bus eventBus; - private INotificationProvider notificationProvider; - private IMachineOperator machineOperator; - public DependencyProperty<AvailableStub> availableStub; - public DependencyProperty<StubBase> stub; - public DependencyProperty<String> response; - public RelayCommand runCommand; - - @Inject - public StubFragmentVM(Bus eventBus, INotificationProvider notificationProvider, IMachineOperator machineOperator) - { - - availableStub = new DependencyProperty<>(); - stub = new DependencyProperty<>(); - response = new DependencyProperty<>(""); - this.eventBus = eventBus; - this.machineOperator = machineOperator; - this.notificationProvider = notificationProvider; - this.eventBus.register(this); - - runCommand = new RelayCommand(this::runSelectedStub); - } - - @Subscribe - public void handleStubSelectedEvent(StubSelectedEvent e) - { - availableStub.set(e.getStub()); - stub.set(availableStub.get().createInstance(machineOperator)); - } - - private void runSelectedStub() - { - stub.get().run().observeOn(AndroidSchedulers.mainThread()).subscribe((response) -> - { - this.response.set(this.response.get() + response + "\n"); - logManager.log(response); - }, (ex) -> - { - this.response.set(this.response.get() + ex.getMessage() + "\n"); - logManager.log(ex); - }); - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/IStubsFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/IStubsFragment.java deleted file mode 100644 index 5d6f6a296..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/IStubsFragment.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.twine.tango.stubs.ui.views.stubs; - -import com.twine.tango.sharedui.mvvm.IView; - -/** - * Created by Roy on 11/7/2017. - */ - -public interface IStubsFragment extends IView -{ - - - -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/StubsFragment.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/StubsFragment.java deleted file mode 100644 index b48962a76..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/StubsFragment.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.twine.tango.stubs.ui.views.stubs; - -import com.twine.tango.sharedui.containers.FragmentBase; -import com.twine.tango.stubs.ui.App; -import com.twine.tango.stubs.ui.R; -import com.twine.tango.stubs.ui.databinding.ActivityStubsBinding; - -public class StubsFragment extends FragmentBase<ActivityStubsBinding, StubsFragmentVM> implements IStubsFragment -{ - - @Override - protected int getLayoutId() { - return R.layout.activity_stubs; - } - - @Override - protected void inject() { - App.getComponent().inject(this); - } - - @Override - public String getTitle() - { - return "Stubs"; - } -} diff --git a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/StubsFragmentVM.java b/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/StubsFragmentVM.java deleted file mode 100644 index ceacf4e00..000000000 --- a/Software/Android_Studio/Tango.Stubs.UI/src/main/java/com/twine/tango/stubs/ui/views/stubs/StubsFragmentVM.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.twine.tango.stubs.ui.views.stubs; - -import android.databinding.ObservableArrayList; -import android.databinding.ObservableField; -import android.databinding.ObservableList; -import android.util.Log; -import android.view.View; -import android.widget.AdapterView; - -import com.squareup.otto.Bus; -import com.twine.tango.sharedui.navigation.INavigationProvider; -import com.twine.tango.stubs.AvailableStub; -import com.twine.tango.sharedui.mvvm.FieldUtils; -import com.twine.tango.sharedui.mvvm.ViewModelBase; -import com.twine.tango.stubs.StubBase; -import com.twine.tango.stubs.StubDirection; -import com.twine.tango.stubs.ui.BR; -import com.twine.tango.stubs.ui.Events.StubSelectedEvent; -import com.twine.tango.stubs.ui.R; -import com.twine.tango.stubs.ui.views.main.IMainActivity.Navigation; - -import javax.inject.Inject; - -import me.tatarka.bindingcollectionadapter2.ItemBinding; - -/** - * Created by Roy on 11/7/2017. - */ - -public class StubsFragmentVM extends ViewModelBase<IStubsFragment> { - - private Bus eventBus; - private INavigationProvider navigationProvider; - - public ObservableList<AvailableStub> stubs; - public ItemBinding<String> stubBinding; - public ObservableField<AvailableStub> selectedStub; - public ObservableField<Integer> selectedStubIndex; - - - @Inject - public StubsFragmentVM(Bus eventBus, INavigationProvider navigationProvider) { - - this.eventBus = eventBus; - this.navigationProvider = navigationProvider; - - stubs = new ObservableArrayList<>(); - stubBinding = ItemBinding.of(BR.stub, R.layout.stubs_listview_item); - selectedStub = new ObservableField<>(); - selectedStubIndex = FieldUtils.toField(FieldUtils.toObservable(selectedStub).map(stub -> stubs.indexOf(stub))); - - stubs.addAll(StubBase.getAllStubs(StubDirection.ToMachine)); - } - - public void onStubSelected(AdapterView<?> adapterView, View view, int i, long l) { - selectedStub.set((AvailableStub) adapterView.getAdapter().getItem(i)); - Log.i("Results", "Stub clicked: " + selectedStub.get().getName()); - Log.i("Results","Selected User Index: " + selectedStubIndex.get()); - - navigationProvider.navigateTo(Navigation.Stub,(x) -> - { - eventBus.post(new StubSelectedEvent(selectedStub.get())); - }); - } -} |
