MCPcopy
hub / github.com/sockeqwe/mosby

github.com/sockeqwe/mosby @3.1.1 sqlite

repository ↗ · DeepWiki ↗ · release 3.1.1 ↗
2,792 symbols 7,821 edges 416 files 675 documented · 24%
README

Mosby

A Model-View-Presenter and Model-View-Intent library for Android apps.

Build Status

Dependency

dependencies {

  compile 'com.hannesdorfmann.mosby3:mvi:3.1.0' // Model-View-Intent
  // or
  compile 'com.hannesdorfmann.mosby3:mvp:3.1.0' // Plain MVP
  // or
  compile 'com.hannesdorfmann.mosby3:viewstate:3.1.0' // MVP + ViewState support
}

Additional modules:

dependencies {

  // MVP + ViewState + LCE Views
  compile 'com.hannesdorfmann.mosby3:mvp-lce:3.1.0'

  // Null Object Presenter for MVP
  compile 'com.hannesdorfmann.mosby3:mvp-nullobject-presenter:3.1.0'

  // Queuing Presenter for MVP
  compile 'com.hannesdorfmann.mosby3:mvp-queuing-presenter:3.1.0'
}

SNAPSHOT:

dependencies {

  compile 'com.hannesdorfmann.mosby3:mvi:3.1.1-SNAPSHOT'

  compile 'com.hannesdorfmann.mosby3:mvp:3.1.1-SNAPSHOT'
  compile 'com.hannesdorfmann.mosby3:viewstate:3.1.1-SNAPSHOT'

  compile 'com.hannesdorfmann.mosby3:mvp-lce:3.1.1-SNAPSHOT'
  compile 'com.hannesdorfmann.mosby3:mvp-nullobject-presenter:3.1.1-SNAPSHOT'
  compile 'com.hannesdorfmann.mosby3:mvp-queuing-presenter:3.1.1-SNAPSHOT'
}

You also have to add the url to the snapshot repository:

allprojects {
  repositories {
    maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
  }
}

Documentation

See the project website.

For Model-View-Intent check out this blog post series.

Changelog

The changelog can be found in the release section

Migrating

In Mosby 3.0 we have changed the package name from com.hannesdorfmann.mosby to com.hannesdorfmann.mosby3 (note the 3 at the end). Migrating a Mosby 2.x based app to Mosby 3.0 should be straightforward: Just replace all import statements of your app in android studio with Edit -> Find -> Replace in Path ... and set find import com.hannesdorfmann.mosby replace with import com.hannesdorfmann.mosby3. There were also some minor API changes (see changelog), but most apps should be fine by replacing the import statements.

Conductor

Mosby has a plugin for Conductor. You can find it here: https://github.com/sockeqwe/mosby-conductor

License

Copyright 2015 Hannes Dorfmann

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Extension points exported contracts — how you extend this code

ViewAction (Interface)
An Action that is executed to interact with the view. Usually a Presenter should not get any data from View: so calls li [16 …
mvp-queuing-presenter/src/main/java/com/hannesdorfmann/mosby3/mvp/MvpQueuingBasePresenter.java
ViewState (Interface)
A ViewState is, like the name suggests, responsible to store the views state. In other words: The view like an Activity [13 …
viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/ViewState.java
CountriesView (Interface)
The View interface. It's not really needed to do it this way (defining a own interface). We could also use Mvp MvpLceVie [6 …
sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/CountriesView.java
ViewGroupMviDelegate (Interface)
The mvp delegate used for everything that derives from View like FrameLayout etc. The following met [12 implementers]
mvi/src/main/java/com/hannesdorfmann/mosby3/ViewGroupMviDelegate.java
PartialStateChanges (Interface)
@author Hannes Dorfmann [12 implementers]
sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/PartialStateChanges.java
ViewAction (Interface)
An Action that is executed to interact with the view. Usually a Presenter should not get any data from View: so calls li [16 …
mvp/src/main/java/com/hannesdorfmann/mosby3/mvp/MvpBasePresenter.java
MvpLceView (Interface)
A MvpView that assumes that there are 3 display operation: #showLoading(boolean): Display a loa [7 implementers]
mvp-lce/src/main/java/com/hannesdorfmann/mosby3/mvp/lce/MvpLceView.java
MvpView (Interface)
The root view interface for every mvp view @author Hannes Dorfmann @since 1.0.0 [16 implementers]
mvp-common/src/main/java/com/hannesdorfmann/mosby3/mvp/MvpView.java

Core symbols most depended-on inside this repo

get
called by 112
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/ui/transition/TextSizeTransition.java
getActivity
called by 75
presentermanager/src/main/java/com/hannesdorfmann/mosby3/PresenterManager.java
get
called by 68
sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/CountriesErrorMessage.java
build
called by 66
sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/HomeViewState.java
onCreate
called by 58
mvi/src/main/java/com/hannesdorfmann/mosby3/ActivityMviDelegate.java
getView
called by 43
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/utils/SimpleAdapter.java
getMvpView
called by 39
mvi/src/main/java/com/hannesdorfmann/mosby3/MviDelegateCallback.java
subscribe
called by 39
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/presenter/BaseRxLcePresenter.java

Shape

Method 2,314
Class 380
Interface 98

Languages

Java100%

Modules by API surface

sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/PartialStateChanges.java35 symbols
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/ui/transition/RevealVisibilityTransition.java33 symbols
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/statistics/StatisticsDialog.java32 symbols
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchFragment.java24 symbols
sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/HomeViewState.java23 symbols
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/Mail.java23 symbols
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/label/LabelLayout.java23 symbols
sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/details/DetailsFragment.java21 symbols
presentermanager/src/test/java/com/hannesdorfmann/mosby3/PresenterManagerTest.java21 symbols
sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/lce/viewstate/NotRetainingCountriesFragment.java20 symbols
mvi/src/main/java/com/hannesdorfmann/mosby3/mvi/MviFragment.java20 symbols
mvi/src/main/java/com/hannesdorfmann/mosby3/mvi/MviDialogFragment.java20 symbols

For agents

$ claude mcp add mosby \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact