Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
AloqaIM-Android
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
AloqaIM-Android
Commits
27d2d71b
Commit
27d2d71b
authored
Feb 10, 2017
by
Tiago Cunha
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Moving thigs around
parent
df93fe8b
Changes
107
Hide whitespace changes
Inline
Side-by-side
Showing
107 changed files
with
441 additions
and
320 deletions
+441
-320
build.gradle
app/build.gradle
+4
-5
RocketChatApplication.java
.../main/java/chat/rocket/android/RocketChatApplication.java
+4
-7
AbstractAuthedActivity.java
.../chat/rocket/android/activity/AbstractAuthedActivity.java
+5
-5
LoginActivity.java
...main/java/chat/rocket/android/activity/LoginActivity.java
+1
-1
MainActivity.java
.../main/java/chat/rocket/android/activity/MainActivity.java
+9
-9
MethodCallHelper.java
...c/main/java/chat/rocket/android/api/MethodCallHelper.java
+19
-13
DefaultCookieProvider.java
...a/chat/rocket/android/api/rest/DefaultCookieProvider.java
+2
-2
RoomContract.java
...a/chat/rocket/android/fragment/chatroom/RoomContract.java
+1
-1
RoomFragment.java
...a/chat/rocket/android/fragment/chatroom/RoomFragment.java
+16
-16
RoomPresenter.java
.../chat/rocket/android/fragment/chatroom/RoomPresenter.java
+6
-6
FileUploadProgressDialogFragment.java
...ent/chatroom/dialog/FileUploadProgressDialogFragment.java
+2
-2
UsersOfRoomDialogFragment.java
...d/fragment/chatroom/dialog/UsersOfRoomDialogFragment.java
+2
-2
AbstractOAuthFragment.java
.../rocket/android/fragment/oauth/AbstractOAuthFragment.java
+5
-5
FacebookOAuthFragment.java
.../rocket/android/fragment/oauth/FacebookOAuthFragment.java
+2
-2
GitHubOAuthFragment.java
...at/rocket/android/fragment/oauth/GitHubOAuthFragment.java
+2
-2
GoogleOAuthFragment.java
...at/rocket/android/fragment/oauth/GoogleOAuthFragment.java
+2
-2
TwitterOAuthFragment.java
...t/rocket/android/fragment/oauth/TwitterOAuthFragment.java
+2
-2
LoginFragment.java
.../rocket/android/fragment/server_config/LoginFragment.java
+5
-5
RetryLoginFragment.java
...et/android/fragment/server_config/RetryLoginFragment.java
+1
-1
SidebarMainContract.java
.../rocket/android/fragment/sidebar/SidebarMainContract.java
+2
-2
SidebarMainFragment.java
.../rocket/android/fragment/sidebar/SidebarMainFragment.java
+4
-4
SidebarMainPresenter.java
...rocket/android/fragment/sidebar/SidebarMainPresenter.java
+3
-3
AddDirectMessageDialogFragment.java
...agment/sidebar/dialog/AddDirectMessageDialogFragment.java
+1
-1
FileUploadHelper.java
...ain/java/chat/rocket/android/helper/FileUploadHelper.java
+4
-4
GcmPushSettingHelper.java
...java/chat/rocket/android/helper/GcmPushSettingHelper.java
+11
-11
AbstractMessageViewHolder.java
...roid/layouthelper/chatroom/AbstractMessageViewHolder.java
+1
-1
MessageListAdapter.java
...ket/android/layouthelper/chatroom/MessageListAdapter.java
+1
-1
MessageType.java
...hat/rocket/android/layouthelper/chatroom/MessageType.java
+1
-1
PairedMessage.java
...t/rocket/android/layouthelper/chatroom/PairedMessage.java
+1
-1
RoomListManager.java
...rocket/android/layouthelper/chatroom/RoomListManager.java
+1
-1
RoomUserAdapter.java
...android/layouthelper/chatroom/dialog/RoomUserAdapter.java
+1
-1
SuggestUserAdapter.java
...droid/layouthelper/sidebar/dialog/SuggestUserAdapter.java
+1
-1
PushNotificationHandler.java
...ava/chat/rocket/android/push/PushNotificationHandler.java
+2
-2
GcmInstanceIDListenerService.java
...rocket/android/push/gcm/GcmInstanceIDListenerService.java
+5
-5
FileUploadingRenderer.java
...a/chat/rocket/android/renderer/FileUploadingRenderer.java
+1
-1
MessageRenderer.java
...in/java/chat/rocket/android/renderer/MessageRenderer.java
+3
-3
UserRenderer.java
.../main/java/chat/rocket/android/renderer/UserRenderer.java
+1
-1
ConnectivityManagerApi.java
...a/chat/rocket/android/service/ConnectivityManagerApi.java
+1
-0
ConnectivityManagerInternal.java
...t/rocket/android/service/ConnectivityManagerInternal.java
+1
-0
RealmBasedConnectivityManager.java
...rocket/android/service/RealmBasedConnectivityManager.java
+3
-1
RocketChatWebSocketThread.java
...hat/rocket/android/service/RocketChatWebSocketThread.java
+3
-2
ServerInfo.java
...src/main/java/chat/rocket/android/service/ServerInfo.java
+0
-19
ActiveUsersSubscriber.java
...ocket/android/service/ddp/base/ActiveUsersSubscriber.java
+1
-1
LoginServiceConfigurationSubscriber.java
...service/ddp/base/LoginServiceConfigurationSubscriber.java
+2
-2
UserDataSubscriber.java
...t/rocket/android/service/ddp/base/UserDataSubscriber.java
+1
-1
StreamNotifyUserSubscriptionsChanged.java
...vice/ddp/stream/StreamNotifyUserSubscriptionsChanged.java
+3
-3
StreamRoomMessage.java
.../rocket/android/service/ddp/stream/StreamRoomMessage.java
+1
-1
AbstractRocketChatCacheObserver.java
...oid/service/internal/AbstractRocketChatCacheObserver.java
+3
-3
CurrentUserObserver.java
.../rocket/android/service/observer/CurrentUserObserver.java
+1
-1
FileUploadingToS3Observer.java
...t/android/service/observer/FileUploadingToS3Observer.java
+2
-2
FileUploadingWithUfsObserver.java
...ndroid/service/observer/FileUploadingWithUfsObserver.java
+4
-4
GcmPushRegistrationObserver.java
...android/service/observer/GcmPushRegistrationObserver.java
+6
-6
GetUsersOfRoomsProcedureObserver.java
...id/service/observer/GetUsersOfRoomsProcedureObserver.java
+2
-2
LoadMessageProcedureObserver.java
...ndroid/service/observer/LoadMessageProcedureObserver.java
+3
-3
MethodCallObserver.java
...t/rocket/android/service/observer/MethodCallObserver.java
+2
-2
NewMessageObserver.java
...t/rocket/android/service/observer/NewMessageObserver.java
+2
-2
PushSettingsObserver.java
...rocket/android/service/observer/PushSettingsObserver.java
+5
-5
SessionObserver.java
...chat/rocket/android/service/observer/SessionObserver.java
+4
-4
TokenLoginObserver.java
...t/rocket/android/service/observer/TokenLoginObserver.java
+1
-1
gradle.properties
gradle.properties
+5
-1
build.gradle
persistence-realm/build.gradle
+5
-0
RealmStore.java
...c/main/java/chat/rocket/persistence/realm/RealmStore.java
+13
-0
RocketChatPersistenceRealm.java
.../rocket/persistence/realm/RocketChatPersistenceRealm.java
+21
-0
LogcatIfError.java
.../chat/rocket/persistence/realm/helpers/LogcatIfError.java
+18
-0
RealmBasedServerInfo.java
...rocket/persistence/realm/models/RealmBasedServerInfo.java
+18
-11
RealmEmail.java
.../chat/rocket/persistence/realm/models/ddp/RealmEmail.java
+2
-2
RealmMessage.java
...hat/rocket/persistence/realm/models/ddp/RealmMessage.java
+9
-9
RealmMeteorLoginServiceConfiguration.java
...ealm/models/ddp/RealmMeteorLoginServiceConfiguration.java
+2
-2
RealmPreferences.java
...rocket/persistence/realm/models/ddp/RealmPreferences.java
+2
-2
RealmPublicSetting.java
...cket/persistence/realm/models/ddp/RealmPublicSetting.java
+7
-7
RealmRoom.java
...a/chat/rocket/persistence/realm/models/ddp/RealmRoom.java
+4
-4
RealmSettings.java
...at/rocket/persistence/realm/models/ddp/RealmSettings.java
+2
-2
RealmUser.java
...a/chat/rocket/persistence/realm/models/ddp/RealmUser.java
+3
-3
FileUploading.java
...cket/persistence/realm/models/internal/FileUploading.java
+1
-1
GcmPushRegistration.java
...ersistence/realm/models/internal/GcmPushRegistration.java
+2
-2
GetUsersOfRoomsProcedure.java
...tence/realm/models/internal/GetUsersOfRoomsProcedure.java
+1
-1
LoadMessageProcedure.java
...rsistence/realm/models/internal/LoadMessageProcedure.java
+2
-2
MethodCall.java
.../rocket/persistence/realm/models/internal/MethodCall.java
+5
-14
Session.java
...hat/rocket/persistence/realm/models/internal/Session.java
+3
-3
RocketChatLibraryModule.java
...et/persistence/realm/modules/RocketChatLibraryModule.java
+7
-0
RocketChatServerModule.java
...ket/persistence/realm/modules/RocketChatServerModule.java
+9
-0
RealmMessageRepository.java
...ersistence/realm/repositories/RealmMessageRepository.java
+6
-6
RealmRepository.java
...ocket/persistence/realm/repositories/RealmRepository.java
+1
-1
RealmRoomRepository.java
...t/persistence/realm/repositories/RealmRoomRepository.java
+14
-14
RealmUserRepository.java
...t/persistence/realm/repositories/RealmUserRepository.java
+4
-4
.gitignore
rocket-chat-core/.gitignore
+1
-0
build.gradle
rocket-chat-core/build.gradle
+21
-0
JsonConstants.java
...at-core/src/main/java/chat/rocket/core/JsonConstants.java
+1
-1
PublicSettingsConstants.java
...c/main/java/chat/rocket/core/PublicSettingsConstants.java
+1
-1
SyncState.java
...t-chat-core/src/main/java/chat/rocket/core/SyncState.java
+1
-1
Attachment.java
...ore/src/main/java/chat/rocket/core/models/Attachment.java
+2
-3
AttachmentAuthor.java
...c/main/java/chat/rocket/core/models/AttachmentAuthor.java
+1
-1
AttachmentField.java
...rc/main/java/chat/rocket/core/models/AttachmentField.java
+1
-1
AttachmentTitle.java
...rc/main/java/chat/rocket/core/models/AttachmentTitle.java
+2
-2
Email.java
...hat-core/src/main/java/chat/rocket/core/models/Email.java
+1
-1
Message.java
...t-core/src/main/java/chat/rocket/core/models/Message.java
+2
-3
Preferences.java
...re/src/main/java/chat/rocket/core/models/Preferences.java
+1
-1
Room.java
...chat-core/src/main/java/chat/rocket/core/models/Room.java
+1
-1
RoomHistoryState.java
...c/main/java/chat/rocket/core/models/RoomHistoryState.java
+1
-1
ServerInfo.java
...ore/src/main/java/chat/rocket/core/models/ServerInfo.java
+39
-0
Settings.java
...-core/src/main/java/chat/rocket/core/models/Settings.java
+1
-1
User.java
...chat-core/src/main/java/chat/rocket/core/models/User.java
+2
-3
WebContent.java
...ore/src/main/java/chat/rocket/core/models/WebContent.java
+2
-2
MessageRepository.java
...java/chat/rocket/core/repositories/MessageRepository.java
+3
-3
RoomRepository.java
...in/java/chat/rocket/core/repositories/RoomRepository.java
+3
-3
UserRepository.java
...in/java/chat/rocket/core/repositories/UserRepository.java
+2
-2
settings.gradle
settings.gradle
+1
-1
No files found.
app/build.gradle
View file @
27d2d71b
apply
plugin:
'com.android.application'
apply
plugin:
'me.tatarka.retrolambda'
apply
plugin:
'realm-android'
apply
plugin:
'com.jakewharton.hugo'
apply
plugin:
'com.github.triplet.play'
apply
from:
'../config/quality/quality.gradle'
...
...
@@ -76,6 +75,9 @@ android {
//avoiding okio error: https://github.com/square/okhttp/issues/896
lintConfig
file
(
"lint.xml"
)
}
dexOptions
{
javaMaxHeapSize
'4g'
}
}
play
{
jsonFile
=
file
(
'rocket-chat.json'
)
...
...
@@ -92,6 +94,7 @@ repositories {
dependencies
{
compile
project
(
':log-wrapper'
)
compile
project
(
':android-ddp'
)
compile
project
(
':rocket-chat-core'
)
compile
project
(
':rocket-chat-android-widgets'
)
compile
project
(
':persistence-realm'
)
compile
rootProject
.
ext
.
supportAppCompat
...
...
@@ -127,10 +130,6 @@ dependencies {
compile
'com.github.hotchemi:permissionsdispatcher:2.3.0'
annotationProcessor
'com.github.hotchemi:permissionsdispatcher-processor:2.3.0'
provided
"com.google.auto.value:auto-value:1.3"
annotationProcessor
"com.google.auto.value:auto-value:1.3"
annotationProcessor
'com.gabrielittner.auto.value:auto-value-with:1.0.0'
}
apply
plugin:
'com.google.gms.google-services'
app/src/main/java/chat/rocket/android/RocketChatApplication.java
View file @
27d2d71b
...
...
@@ -3,16 +3,15 @@ package chat.rocket.android;
import
android.support.multidex.MultiDexApplication
;
import
com.facebook.stetho.Stetho
;
import
com.uphyca.stetho_realm.RealmInspectorModulesProvider
;
import
io.realm.Realm
;
import
io.realm.RealmConfiguration
;
import
java.util.List
;
import
chat.rocket.android.helper.OkHttpHelper
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.android.service.ConnectivityManager
;
import
chat.rocket.
android.service
.ServerInfo
;
import
chat.rocket.
core.models
.ServerInfo
;
import
chat.rocket.android.widget.RocketChatWidgets
;
import
chat.rocket.android.wrappers.InstabugWrapper
;
import
chat.rocket.persistence.realm.RocketChatPersistenceRealm
;
/**
* Customized Application-class for Rocket.Chat
...
...
@@ -22,13 +21,11 @@ public class RocketChatApplication extends MultiDexApplication {
public
void
onCreate
()
{
super
.
onCreate
();
Realm
.
init
(
this
);
Realm
.
setDefaultConfiguration
(
new
RealmConfiguration
.
Builder
().
deleteRealmIfMigrationNeeded
().
build
());
RocketChatPersistenceRealm
.
init
(
this
);
List
<
ServerInfo
>
serverInfoList
=
ConnectivityManager
.
getInstance
(
this
).
getServerList
();
for
(
ServerInfo
serverInfo
:
serverInfoList
)
{
RealmStore
.
put
(
serverInfo
.
hostname
);
RealmStore
.
put
(
serverInfo
.
getHostname
()
);
}
Stetho
.
initialize
(
Stetho
.
newInitializerBuilder
(
this
)
...
...
app/src/main/java/chat/rocket/android/activity/AbstractAuthedActivity.java
View file @
27d2d71b
...
...
@@ -8,12 +8,12 @@ import android.support.annotation.Nullable;
import
java.util.List
;
import
chat.rocket.android.LaunchUtil
;
import
chat.rocket.android.RocketChatCache
;
import
chat.rocket.
android.model.ddp.RoomSubscription
;
import
chat.rocket.
persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.android.push.PushConstants
;
import
chat.rocket.android.push.PushNotificationHandler
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.android.service.ConnectivityManager
;
import
chat.rocket.
android.service
.ServerInfo
;
import
chat.rocket.
core.models
.ServerInfo
;
import
icepick.State
;
abstract
class
AbstractAuthedActivity
extends
AbstractFragmentActivity
{
...
...
@@ -107,7 +107,7 @@ abstract class AbstractAuthedActivity extends AbstractFragmentActivity {
// just connect to the first available
final
ServerInfo
serverInfo
=
serverInfoList
.
get
(
0
);
prefs
.
edit
()
.
putString
(
RocketChatCache
.
KEY_SELECTED_SERVER_HOSTNAME
,
serverInfo
.
hostname
)
.
putString
(
RocketChatCache
.
KEY_SELECTED_SERVER_HOSTNAME
,
serverInfo
.
getHostname
()
)
.
remove
(
RocketChatCache
.
KEY_SELECTED_ROOM_ID
)
.
apply
();
}
...
...
@@ -130,8 +130,8 @@ abstract class AbstractAuthedActivity extends AbstractFragmentActivity {
return
false
;
}
R
oomSubscription
room
=
RealmStore
.
get
(
hostname
).
executeTransactionForRead
(
realm
->
realm
.
where
(
R
oomSubscription
.
class
).
equalTo
(
RoomSubscription
.
ROOM_ID
,
roomId
).
findFirst
());
R
ealmRoom
room
=
RealmStore
.
get
(
hostname
).
executeTransactionForRead
(
realm
->
realm
.
where
(
R
ealmRoom
.
class
).
equalTo
(
RealmRoom
.
ROOM_ID
,
roomId
).
findFirst
());
if
(
room
==
null
)
{
prefs
.
edit
()
.
remove
(
RocketChatCache
.
KEY_SELECTED_ROOM_ID
)
...
...
app/src/main/java/chat/rocket/android/activity/LoginActivity.java
View file @
27d2d71b
...
...
@@ -9,7 +9,7 @@ import chat.rocket.android.R;
import
chat.rocket.android.fragment.server_config.LoginFragment
;
import
chat.rocket.android.fragment.server_config.RetryLoginFragment
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmObjectObserver
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.android.service.ConnectivityManager
;
...
...
app/src/main/java/chat/rocket/android/activity/MainActivity.java
View file @
27d2d71b
...
...
@@ -17,9 +17,9 @@ import chat.rocket.android.fragment.chatroom.RoomFragment;
import
chat.rocket.android.fragment.sidebar.SidebarMainFragment
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model.ddp.RoomSubscription
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmListObserver
;
import
chat.rocket.persistence.realm.RealmObjectObserver
;
...
...
@@ -34,7 +34,7 @@ import hugo.weaving.DebugLog;
public
class
MainActivity
extends
AbstractAuthedActivity
{
private
RealmObjectObserver
<
Session
>
sessionObserver
;
private
RealmListObserver
<
R
oomSubscription
>
unreadRoomSubscriptionObserver
;
private
RealmListObserver
<
R
ealmRoom
>
unreadRoomSubscriptionObserver
;
private
boolean
isForeground
;
private
StatusTicker
statusTicker
;
...
...
@@ -228,21 +228,21 @@ public class MainActivity extends AbstractAuthedActivity {
unreadRoomSubscriptionObserver
=
realmHelper
.
createListObserver
(
realm
->
realm
.
where
(
R
oomSubscription
.
class
)
.
equalTo
(
R
oomSubscription
.
ALERT
,
true
)
.
equalTo
(
R
oomSubscription
.
OPEN
,
true
)
realm
.
where
(
R
ealmRoom
.
class
)
.
equalTo
(
R
ealmRoom
.
ALERT
,
true
)
.
equalTo
(
R
ealmRoom
.
OPEN
,
true
)
.
findAll
())
.
setOnUpdateListener
(
this
::
updateRoomToolbarUnreadCount
);
unreadRoomSubscriptionObserver
.
sub
();
}
private
void
updateRoomToolbarUnreadCount
(
List
<
R
oomSubscription
>
unreadRooms
)
{
private
void
updateRoomToolbarUnreadCount
(
List
<
R
ealmRoom
>
unreadRooms
)
{
RoomToolbar
toolbar
=
(
RoomToolbar
)
findViewById
(
R
.
id
.
activity_main_toolbar
);
if
(
toolbar
!=
null
)
{
//ref: Rocket.Chat:client/startup/unread.js
final
int
numUnreadChannels
=
unreadRooms
.
size
();
int
numMentionsSum
=
0
;
for
(
R
oomSubscription
room
:
unreadRooms
)
{
for
(
R
ealmRoom
room
:
unreadRooms
)
{
numMentionsSum
+=
room
.
getUnread
();
}
toolbar
.
setUnreadBudge
(
numUnreadChannels
,
numMentionsSum
);
...
...
app/src/main/java/chat/rocket/android/api/MethodCallHelper.java
View file @
27d2d71b
...
...
@@ -11,12 +11,13 @@ import bolts.Continuation;
import
bolts.Task
;
import
chat.rocket.android.helper.CheckSum
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.model.SyncState
;
import
chat.rocket.android.model.ddp.RealmMessage
;
import
chat.rocket.android.model.ddp.PublicSetting
;
import
chat.rocket.android.model.ddp.RoomSubscription
;
import
chat.rocket.android.model.internal.MethodCall
;
import
chat.rocket.android.model.internal.Session
;
import
chat.rocket.android.service.ConnectivityManager
;
import
chat.rocket.persistence.realm.models.ddp.RealmPublicSetting
;
import
chat.rocket.core.SyncState
;
import
chat.rocket.persistence.realm.models.ddp.RealmMessage
;
import
chat.rocket.persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.persistence.realm.models.internal.MethodCall
;
import
chat.rocket.persistence.realm.models.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
@@ -63,7 +64,12 @@ public class MethodCallHelper {
return
ddpClientRef
.
get
().
rpc
(
UUID
.
randomUUID
().
toString
(),
methodName
,
param
,
timeout
)
.
onSuccessTask
(
task
->
Task
.
forResult
(
task
.
getResult
().
result
));
}
else
{
return
MethodCall
.
execute
(
context
,
realmHelper
,
methodName
,
param
,
timeout
);
return
MethodCall
.
execute
(
realmHelper
,
methodName
,
param
,
timeout
)
.
onSuccessTask
(
task
->
{
ConnectivityManager
.
getInstance
(
context
.
getApplicationContext
())
.
keepAliveServer
();
return
task
;
});
}
}
...
...
@@ -211,13 +217,13 @@ public class MethodCallHelper {
final
JSONArray
result
=
task
.
getResult
();
try
{
for
(
int
i
=
0
;
i
<
result
.
length
();
i
++)
{
R
oomSubscription
.
customizeJson
(
result
.
getJSONObject
(
i
));
R
ealmRoom
.
customizeJson
(
result
.
getJSONObject
(
i
));
}
return
realmHelper
.
executeTransaction
(
realm
->
{
realm
.
delete
(
R
oomSubscription
.
class
);
realm
.
delete
(
R
ealmRoom
.
class
);
realm
.
createOrUpdateAllFromJson
(
R
oomSubscription
.
class
,
result
);
R
ealmRoom
.
class
,
result
);
return
null
;
});
}
catch
(
JSONException
exception
)
{
...
...
@@ -334,12 +340,12 @@ public class MethodCallHelper {
.
onSuccessTask
(
task
->
{
final
JSONArray
settings
=
task
.
getResult
();
for
(
int
i
=
0
;
i
<
settings
.
length
();
i
++)
{
PublicSetting
.
customizeJson
(
settings
.
getJSONObject
(
i
));
Realm
PublicSetting
.
customizeJson
(
settings
.
getJSONObject
(
i
));
}
return
realmHelper
.
executeTransaction
(
realm
->
{
realm
.
delete
(
PublicSetting
.
class
);
realm
.
createOrUpdateAllFromJson
(
PublicSetting
.
class
,
settings
);
realm
.
delete
(
Realm
PublicSetting
.
class
);
realm
.
createOrUpdateAllFromJson
(
Realm
PublicSetting
.
class
,
settings
);
return
null
;
});
});
...
...
app/src/main/java/chat/rocket/android/api/rest/DefaultCookieProvider.java
View file @
27d2d71b
...
...
@@ -3,8 +3,8 @@ package chat.rocket.android.api.rest;
import
android.content.Context
;
import
chat.rocket.android.RocketChatCache
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmStore
;
...
...
app/src/main/java/chat/rocket/android/fragment/chatroom/RoomContract.java
View file @
27d2d71b
...
...
@@ -2,7 +2,7 @@ package chat.rocket.android.fragment.chatroom;
import
android.support.annotation.NonNull
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
core.models
.Room
;
public
interface
RoomContract
{
...
...
app/src/main/java/chat/rocket/android/fragment/chatroom/RoomFragment.java
View file @
27d2d71b
...
...
@@ -47,15 +47,15 @@ import chat.rocket.android.layouthelper.extra_action.upload.AudioUploadActionIte
import
chat.rocket.android.layouthelper.extra_action.upload.ImageUploadActionItem
;
import
chat.rocket.android.layouthelper.extra_action.upload.VideoUploadActionItem
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
android.model.ddp.RoomSubscription
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
android
.repositories.RealmMessageRepository
;
import
chat.rocket.
android
.repositories.RealmRoomRepository
;
import
chat.rocket.
android
.repositories.RealmUserRepository
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
core.models
.Room
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.
persistence.realm
.repositories.RealmMessageRepository
;
import
chat.rocket.
persistence.realm
.repositories.RealmRoomRepository
;
import
chat.rocket.
persistence.realm
.repositories.RealmUserRepository
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmModelListAdapter
;
import
chat.rocket.persistence.realm.RealmStore
;
...
...
@@ -234,8 +234,8 @@ public class RoomFragment extends AbstractChatRoomFragment
}
private
int
getUnreadMessageCount
()
{
R
oomSubscription
room
=
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
R
oomSubscription
.
class
).
equalTo
(
RoomSubscription
.
ROOM_ID
,
roomId
).
findFirst
());
R
ealmRoom
room
=
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
R
ealmRoom
.
class
).
equalTo
(
RealmRoom
.
ROOM_ID
,
roomId
).
findFirst
());
if
(
room
!=
null
)
{
return
realmHelper
.
executeTransactionForReadResults
(
realm
->
realm
.
where
(
RealmMessage
.
class
)
...
...
@@ -343,11 +343,11 @@ public class RoomFragment extends AbstractChatRoomFragment
private
void
onRenderRoom
(
Room
room
)
{
String
type
=
room
.
getType
();
if
(
R
oomSubscription
.
TYPE_CHANNEL
.
equals
(
type
))
{
if
(
R
ealmRoom
.
TYPE_CHANNEL
.
equals
(
type
))
{
setToolbarRoomIcon
(
R
.
drawable
.
ic_hashtag_gray_24dp
);
}
else
if
(
R
oomSubscription
.
TYPE_PRIVATE
.
equals
(
type
))
{
}
else
if
(
R
ealmRoom
.
TYPE_PRIVATE
.
equals
(
type
))
{
setToolbarRoomIcon
(
R
.
drawable
.
ic_lock_gray_24dp
);
}
else
if
(
R
oomSubscription
.
TYPE_DIRECT_MESSAGE
.
equals
(
type
))
{
}
else
if
(
R
ealmRoom
.
TYPE_DIRECT_MESSAGE
.
equals
(
type
))
{
setToolbarRoomIcon
(
R
.
drawable
.
ic_at_gray_24dp
);
}
else
{
setToolbarRoomIcon
(
0
);
...
...
@@ -370,8 +370,8 @@ public class RoomFragment extends AbstractChatRoomFragment
}
private
void
markAsReadIfNeeded
()
{
R
oomSubscription
room
=
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
R
oomSubscription
.
class
).
equalTo
(
RoomSubscription
.
ROOM_ID
,
roomId
).
findFirst
());
R
ealmRoom
room
=
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
R
ealmRoom
.
class
).
equalTo
(
RealmRoom
.
ROOM_ID
,
roomId
).
findFirst
());
if
(
room
!=
null
&&
room
.
isAlert
())
{
new
MethodCallHelper
(
getContext
(),
hostname
).
readMessages
(
roomId
)
.
continueWith
(
new
LogcatIfError
());
...
...
app/src/main/java/chat/rocket/android/fragment/chatroom/RoomPresenter.java
View file @
27d2d71b
...
...
@@ -4,12 +4,12 @@ import android.support.annotation.NonNull;
import
java.util.UUID
;
import
chat.rocket.android.BackgroundLooper
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model.core
.Message
;
import
chat.rocket.
android.model.core
.RoomHistoryState
;
import
chat.rocket.
android.repositories.core
.MessageRepository
;
import
chat.rocket.
android.repositories.core
.RoomRepository
;
import
chat.rocket.
android.repositories.core
.UserRepository
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
core.models
.Message
;
import
chat.rocket.
core.models
.RoomHistoryState
;
import
chat.rocket.
core.repositories
.MessageRepository
;
import
chat.rocket.
core.repositories
.RoomRepository
;
import
chat.rocket.
core.repositories
.UserRepository
;
import
chat.rocket.android.service.ConnectivityManagerApi
;
import
rx.Subscription
;
import
rx.android.schedulers.AndroidSchedulers
;
...
...
app/src/main/java/chat/rocket/android/fragment/chatroom/dialog/FileUploadProgressDialogFragment.java
View file @
27d2d71b
...
...
@@ -9,8 +9,8 @@ import android.widget.TextView;
import
android.widget.Toast
;
import
chat.rocket.android.R
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.internal.FileUploading
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.internal.FileUploading
;
import
chat.rocket.persistence.realm.RealmObjectObserver
;
import
chat.rocket.android.renderer.FileUploadingRenderer
;
...
...
app/src/main/java/chat/rocket/android/fragment/chatroom/dialog/UsersOfRoomDialogFragment.java
View file @
27d2d71b
...
...
@@ -17,8 +17,8 @@ import chat.rocket.android.R;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.layouthelper.chatroom.dialog.RoomUserAdapter
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.internal.GetUsersOfRoomsProcedure
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.internal.GetUsersOfRoomsProcedure
;
import
chat.rocket.persistence.realm.RealmObjectObserver
;
import
chat.rocket.android.service.ConnectivityManager
;
...
...
app/src/main/java/chat/rocket/android/fragment/oauth/AbstractOAuthFragment.java
View file @
27d2d71b
...
...
@@ -14,7 +14,7 @@ import chat.rocket.android.api.MethodCallHelper;
import
chat.rocket.android.fragment.AbstractWebViewFragment
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
import
chat.rocket.persistence.realm.RealmStore
;
public
abstract
class
AbstractOAuthFragment
extends
AbstractWebViewFragment
{
...
...
@@ -25,7 +25,7 @@ public abstract class AbstractOAuthFragment extends AbstractWebViewFragment {
protected
abstract
String
getOAuthServiceName
();
protected
abstract
String
generateURL
(
MeteorLoginServiceConfiguration
oauthConfig
);
protected
abstract
String
generateURL
(
Realm
MeteorLoginServiceConfiguration
oauthConfig
);
private
boolean
hasValidArgs
(
Bundle
args
)
{
return
args
!=
null
...
...
@@ -54,10 +54,10 @@ public abstract class AbstractOAuthFragment extends AbstractWebViewFragment {
}
hostname
=
args
.
getString
(
"hostname"
);
MeteorLoginServiceConfiguration
oauthConfig
=
Realm
MeteorLoginServiceConfiguration
oauthConfig
=
RealmStore
.
get
(
hostname
).
executeTransactionForRead
(
realm
->
realm
.
where
(
MeteorLoginServiceConfiguration
.
class
)
.
equalTo
(
MeteorLoginServiceConfiguration
.
SERVICE
,
getOAuthServiceName
())
realm
.
where
(
Realm
MeteorLoginServiceConfiguration
.
class
)
.
equalTo
(
Realm
MeteorLoginServiceConfiguration
.
SERVICE
,
getOAuthServiceName
())
.
findFirst
());
if
(
oauthConfig
==
null
)
{
throw
new
IllegalArgumentException
(
...
...
app/src/main/java/chat/rocket/android/fragment/oauth/FacebookOAuthFragment.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
fragment
.
oauth
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
import
okhttp3.HttpUrl
;
public
class
FacebookOAuthFragment
extends
AbstractOAuthFragment
{
...
...
@@ -11,7 +11,7 @@ public class FacebookOAuthFragment extends AbstractOAuthFragment {
}
@Override
protected
String
generateURL
(
MeteorLoginServiceConfiguration
oauthConfig
)
{
protected
String
generateURL
(
Realm
MeteorLoginServiceConfiguration
oauthConfig
)
{
return
new
HttpUrl
.
Builder
().
scheme
(
"https"
)
.
host
(
"www.facebook.com"
)
.
addPathSegment
(
"v2.2"
)
...
...
app/src/main/java/chat/rocket/android/fragment/oauth/GitHubOAuthFragment.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
fragment
.
oauth
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
import
okhttp3.HttpUrl
;
public
class
GitHubOAuthFragment
extends
AbstractOAuthFragment
{
...
...
@@ -11,7 +11,7 @@ public class GitHubOAuthFragment extends AbstractOAuthFragment {
}
@Override
protected
String
generateURL
(
MeteorLoginServiceConfiguration
oauthConfig
)
{
protected
String
generateURL
(
Realm
MeteorLoginServiceConfiguration
oauthConfig
)
{
return
new
HttpUrl
.
Builder
().
scheme
(
"https"
)
.
host
(
"github.com"
)
.
addPathSegment
(
"login"
)
...
...
app/src/main/java/chat/rocket/android/fragment/oauth/GoogleOAuthFragment.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
fragment
.
oauth
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
import
okhttp3.HttpUrl
;
public
class
GoogleOAuthFragment
extends
AbstractOAuthFragment
{
...
...
@@ -11,7 +11,7 @@ public class GoogleOAuthFragment extends AbstractOAuthFragment {
}
@Override
protected
String
generateURL
(
MeteorLoginServiceConfiguration
oauthConfig
)
{
protected
String
generateURL
(
Realm
MeteorLoginServiceConfiguration
oauthConfig
)
{
return
new
HttpUrl
.
Builder
().
scheme
(
"https"
)
.
host
(
"accounts.google.com"
)
.
addPathSegment
(
"o"
)
...
...
app/src/main/java/chat/rocket/android/fragment/oauth/TwitterOAuthFragment.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
fragment
.
oauth
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
public
class
TwitterOAuthFragment
extends
AbstractOAuthFragment
{
...
...
@@ -10,7 +10,7 @@ public class TwitterOAuthFragment extends AbstractOAuthFragment {
}
@Override
protected
String
generateURL
(
MeteorLoginServiceConfiguration
oauthConfig
)
{
protected
String
generateURL
(
Realm
MeteorLoginServiceConfiguration
oauthConfig
)
{
return
"https://"
+
hostname
+
"/_oauth/twitter/"
+
"?requestTokenAndRedirect=true&state="
+
getStateString
();
}
...
...
app/src/main/java/chat/rocket/android/fragment/server_config/LoginFragment.java
View file @
27d2d71b
...
...
@@ -14,7 +14,7 @@ import chat.rocket.android.api.MethodCallHelper;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.layouthelper.oauth.OAuthProviderInfo
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
import
chat.rocket.persistence.realm.RealmListObserver
;
import
chat.rocket.persistence.realm.RealmStore
;
...
...
@@ -22,7 +22,7 @@ import chat.rocket.persistence.realm.RealmStore;
* Login screen.
*/
public
class
LoginFragment
extends
AbstractServerConfigFragment
{
private
RealmListObserver
<
MeteorLoginServiceConfiguration
>
authProvidersObserver
;
private
RealmListObserver
<
Realm
MeteorLoginServiceConfiguration
>
authProvidersObserver
;
@Override
protected
int
getLayout
()
{
...
...
@@ -33,7 +33,7 @@ public class LoginFragment extends AbstractServerConfigFragment {
public
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
authProvidersObserver
=
RealmStore
.
get
(
hostname
)
.
createListObserver
(
realm
->
realm
.
where
(
MeteorLoginServiceConfiguration
.
class
).
findAll
())
.
createListObserver
(
realm
->
realm
.
where
(
Realm
MeteorLoginServiceConfiguration
.
class
).
findAll
())
.
setOnUpdateListener
(
this
::
onRenderAuthProviders
);
}
...
...
@@ -74,7 +74,7 @@ public class LoginFragment extends AbstractServerConfigFragment {
Snackbar
.
make
(
rootView
,
errString
,
Snackbar
.
LENGTH_SHORT
).
show
();
}
private
void
onRenderAuthProviders
(
List
<
MeteorLoginServiceConfiguration
>
authProviders
)
{
private
void
onRenderAuthProviders
(
List
<
Realm
MeteorLoginServiceConfiguration
>
authProviders
)
{
HashMap
<
String
,
View
>
viewMap
=
new
HashMap
<>();
HashMap
<
String
,
Boolean
>
supportedMap
=
new
HashMap
<>();
for
(
OAuthProviderInfo
info
:
OAuthProviderInfo
.
LIST
)
{
...
...
@@ -82,7 +82,7 @@ public class LoginFragment extends AbstractServerConfigFragment {
supportedMap
.
put
(
info
.
serviceName
,
false
);
}
for
(
MeteorLoginServiceConfiguration
authProvider
:
authProviders
)
{
for
(
Realm
MeteorLoginServiceConfiguration
authProvider
:
authProviders
)
{
for
(
OAuthProviderInfo
info
:
OAuthProviderInfo
.
LIST
)
{
if
(!
supportedMap
.
get
(
info
.
serviceName
)
&&
info
.
serviceName
.
equals
(
authProvider
.
getService
()))
{
...
...
app/src/main/java/chat/rocket/android/fragment/server_config/RetryLoginFragment.java
View file @
27d2d71b
...
...
@@ -8,7 +8,7 @@ import android.widget.TextView;
import
chat.rocket.android.R
;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmObjectObserver
;
import
chat.rocket.persistence.realm.RealmStore
;
...
...
app/src/main/java/chat/rocket/android/fragment/sidebar/SidebarMainContract.java
View file @
27d2d71b
...
...
@@ -3,8 +3,8 @@ package chat.rocket.android.fragment.sidebar;
import
android.support.annotation.NonNull
;
import
java.util.List
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
android.model.core
.User
;
import
chat.rocket.
core.models
.Room
;
import
chat.rocket.
core.models
.User
;
public
interface
SidebarMainContract
{
...
...
app/src/main/java/chat/rocket/android/fragment/sidebar/SidebarMainFragment.java
View file @
27d2d71b
...
...
@@ -22,11 +22,11 @@ import chat.rocket.android.fragment.sidebar.dialog.AddChannelDialogFragment;
import
chat.rocket.android.fragment.sidebar.dialog.AddDirectMessageDialogFragment
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.layouthelper.chatroom.RoomListManager
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
android.model.core
.User
;
import
chat.rocket.
core.models
.Room
;
import
chat.rocket.
core.models
.User
;
import
chat.rocket.android.renderer.UserRenderer
;
import
chat.rocket.
android
.repositories.RealmRoomRepository
;
import
chat.rocket.
android
.repositories.RealmUserRepository
;
import
chat.rocket.
persistence.realm
.repositories.RealmRoomRepository
;
import
chat.rocket.
persistence.realm
.repositories.RealmUserRepository
;
import
chat.rocket.android.widget.RocketChatAvatar
;
public
class
SidebarMainFragment
extends
AbstractFragment
implements
SidebarMainContract
.
View
{
...
...
app/src/main/java/chat/rocket/android/fragment/sidebar/SidebarMainPresenter.java
View file @
27d2d71b
...
...
@@ -6,9 +6,9 @@ import chat.rocket.android.BackgroundLooper;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model.core
.User
;
import
chat.rocket.
android.repositories.core
.RoomRepository
;
import
chat.rocket.
android.repositories.core
.UserRepository
;
import
chat.rocket.
core.models
.User
;
import
chat.rocket.
core.repositories
.RoomRepository
;
import
chat.rocket.
core.repositories
.UserRepository
;
import
rx.Subscription
;
import
rx.android.schedulers.AndroidSchedulers
;
import
rx.subscriptions.CompositeSubscription
;
...
...
app/src/main/java/chat/rocket/android/fragment/sidebar/dialog/AddDirectMessageDialogFragment.java
View file @
27d2d71b
...
...
@@ -12,7 +12,7 @@ import bolts.Task;
import
chat.rocket.android.R
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.layouthelper.sidebar.dialog.SuggestUserAdapter
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.persistence.realm.RealmAutoCompleteAdapter
;
/**
...
...
app/src/main/java/chat/rocket/android/helper/FileUploadHelper.java
View file @
27d2d71b
...
...
@@ -14,9 +14,9 @@ import java.io.FileNotFoundException;
import
java.io.IOException
;
import
java.util.UUID
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model.ddp.
PublicSetting
;
import
chat.rocket.
android.model
.internal.FileUploading
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
PublicSetting
;
import
chat.rocket.
persistence.realm.models
.internal.FileUploading
;
import
chat.rocket.persistence.realm.RealmHelper
;
/**
...
...
@@ -59,7 +59,7 @@ public class FileUploadHelper {
Uri
uri
,
String
filename
,
long
filesize
,
String
mimeType
)
{
final
String
uplId
=
UUID
.
randomUUID
().
toString
();
final
String
storageType
=
PublicSetting
.
getString
(
realmHelper
,
"FileUpload_Storage_Type"
,
null
);
Realm
PublicSetting
.
getString
(
realmHelper
,
"FileUpload_Storage_Type"
,
null
);
realmHelper
.
executeTransaction
(
realm
->
realm
.
createOrUpdateObjectFromJson
(
FileUploading
.
class
,
new
JSONObject
()
...
...
app/src/main/java/chat/rocket/android/helper/GcmPushSettingHelper.java
View file @
27d2d71b
...
...
@@ -4,28 +4,28 @@ import io.realm.Realm;
import
io.realm.RealmResults
;
import
java.util.List
;
import
chat.rocket.
android.model.ddp.
PublicSetting
;
import
chat.rocket.
android.model.ddp
.PublicSettingsConstants
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
PublicSetting
;
import
chat.rocket.
core
.PublicSettingsConstants
;
/**
* utility class for getting value comprehensibly from public settings list.
*/
public
class
GcmPushSettingHelper
{
public
static
RealmResults
<
PublicSetting
>
queryForGcmPushEnabled
(
Realm
realm
)
{
return
realm
.
where
(
PublicSetting
.
class
)
.
equalTo
(
PublicSetting
.
ID
,
PublicSettingsConstants
.
Push
.
ENABLE
)
public
static
RealmResults
<
Realm
PublicSetting
>
queryForGcmPushEnabled
(
Realm
realm
)
{
return
realm
.
where
(
Realm
PublicSetting
.
class
)
.
equalTo
(
Realm
PublicSetting
.
ID
,
PublicSettingsConstants
.
Push
.
ENABLE
)
.
or
()
.
equalTo
(
PublicSetting
.
ID
,
PublicSettingsConstants
.
Push
.
GCM_PROJECT_NUMBER
)
.
equalTo
(
Realm
PublicSetting
.
ID
,
PublicSettingsConstants
.
Push
.
GCM_PROJECT_NUMBER
)
.
findAll
();
}
public
static
boolean
isGcmPushEnabled
(
List
<
PublicSetting
>
results
)
{
public
static
boolean
isGcmPushEnabled
(
List
<
Realm
PublicSetting
>
results
)
{
return
isPushEnabled
(
results
)
&&
hasValidGcmConfig
(
results
);
}
private
static
boolean
isPushEnabled
(
List
<
PublicSetting
>
results
)
{
for
(
PublicSetting
setting
:
results
)
{
private
static
boolean
isPushEnabled
(
List
<
Realm
PublicSetting
>
results
)
{
for
(
Realm
PublicSetting
setting
:
results
)
{
if
(
PublicSettingsConstants
.
Push
.
ENABLE
.
equals
(
setting
.
getId
()))
{
return
"true"
.
equals
(
setting
.
getValue
());
}
...
...
@@ -33,8 +33,8 @@ public class GcmPushSettingHelper {
return
false
;
}
private
static
boolean
hasValidGcmConfig
(
List
<
PublicSetting
>
results
)
{
for
(
PublicSetting
setting
:
results
)
{
private
static
boolean
hasValidGcmConfig
(
List
<
Realm
PublicSetting
>
results
)
{
for
(
Realm
PublicSetting
setting
:
results
)
{
if
(
PublicSettingsConstants
.
Push
.
GCM_PROJECT_NUMBER
.
equals
(
setting
.
getId
()))
{
return
!
TextUtils
.
isEmpty
(
setting
.
getValue
());
}
...
...
app/src/main/java/chat/rocket/android/layouthelper/chatroom/AbstractMessageViewHolder.java
View file @
27d2d71b
...
...
@@ -7,7 +7,7 @@ import android.widget.TextView;
import
chat.rocket.android.R
;
import
chat.rocket.android.helper.DateTime
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.persistence.realm.RealmModelViewHolder
;
import
chat.rocket.android.widget.RocketChatAvatar
;
...
...
app/src/main/java/chat/rocket/android/layouthelper/chatroom/MessageListAdapter.java
View file @
27d2d71b
...
...
@@ -10,7 +10,7 @@ import java.util.List;
import
chat.rocket.android.R
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.layouthelper.ExtRealmModelListAdapter
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
/**
* target list adapter for chat room.
...
...
app/src/main/java/chat/rocket/android/layouthelper/chatroom/MessageType.java
View file @
27d2d71b
...
...
@@ -3,7 +3,7 @@ package chat.rocket.android.layouthelper.chatroom;
import
android.content.Context
;
import
chat.rocket.android.R
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
/**
* message type.
...
...
app/src/main/java/chat/rocket/android/layouthelper/chatroom/PairedMessage.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
layouthelper
.
chatroom
;
import
chat.rocket.android.helper.DateTime
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
/**
* ViewData Model for messages in chatroom.
...
...
app/src/main/java/chat/rocket/android/layouthelper/chatroom/RoomListManager.java
View file @
27d2d71b
...
...
@@ -4,7 +4,7 @@ import android.view.View;
import
android.view.ViewGroup
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
core.models
.Room
;
import
chat.rocket.android.widget.internal.RoomListItemView
;
import
java.util.List
;
...
...
app/src/main/java/chat/rocket/android/layouthelper/chatroom/dialog/RoomUserAdapter.java
View file @
27d2d71b
...
...
@@ -9,7 +9,7 @@ import android.view.ViewGroup;
import
java.util.List
;
import
chat.rocket.android.R
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.renderer.UserRenderer
;
...
...
app/src/main/java/chat/rocket/android/layouthelper/sidebar/dialog/SuggestUserAdapter.java
View file @
27d2d71b
...
...
@@ -7,7 +7,7 @@ import android.widget.ImageView;
import
java.util.Iterator
;
import
java.util.List
;
import
chat.rocket.android.R
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.persistence.realm.RealmAutoCompleteAdapter
;
import
chat.rocket.android.renderer.UserRenderer
;
import
chat.rocket.android.widget.RocketChatAvatar
;
...
...
app/src/main/java/chat/rocket/android/push/PushNotificationHandler.java
View file @
27d2d71b
...
...
@@ -34,7 +34,7 @@ import java.util.Random;
import
chat.rocket.android.activity.MainActivity
;
import
chat.rocket.android.helper.ServerPolicyHelper
;
import
chat.rocket.android.service.ConnectivityManager
;
import
chat.rocket.
android.service
.ServerInfo
;
import
chat.rocket.
core.models
.ServerInfo
;
public
class
PushNotificationHandler
implements
PushConstants
{
...
...
@@ -661,7 +661,7 @@ public class PushNotificationHandler implements PushConstants {
ConnectivityManager
.
getInstance
(
context
.
getApplicationContext
()).
getServerList
();
for
(
ServerInfo
serverInfo
:
serverInfoList
)
{
if
(
serverInfo
.
hostname
.
equals
(
hostname
))
{
if
(
serverInfo
.
getHostname
()
.
equals
(
hostname
))
{
return
true
;
}
}
...
...
app/src/main/java/chat/rocket/android/push/gcm/GcmInstanceIDListenerService.java
View file @
27d2d71b
...
...
@@ -4,12 +4,12 @@ import com.google.android.gms.iid.InstanceIDListenerService;
import
java.util.List
;
import
chat.rocket.android.helper.GcmPushSettingHelper
;
import
chat.rocket.
android.model.ddp.
PublicSetting
;
import
chat.rocket.
android.model
.internal.GcmPushRegistration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
PublicSetting
;
import
chat.rocket.
persistence.realm.models
.internal.GcmPushRegistration
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.android.service.ConnectivityManager
;
import
chat.rocket.
android.service
.ServerInfo
;
import
chat.rocket.
core.models
.ServerInfo
;
public
class
GcmInstanceIDListenerService
extends
InstanceIDListenerService
{
...
...
@@ -18,7 +18,7 @@ public class GcmInstanceIDListenerService extends InstanceIDListenerService {
List
<
ServerInfo
>
serverInfoList
=
ConnectivityManager
.
getInstance
(
getApplicationContext
())
.
getServerList
();
for
(
ServerInfo
serverInfo
:
serverInfoList
)
{
RealmHelper
realmHelper
=
RealmStore
.
get
(
serverInfo
.
hostname
);
RealmHelper
realmHelper
=
RealmStore
.
get
(
serverInfo
.
getHostname
()
);
if
(
realmHelper
!=
null
)
{
updateGcmToken
(
realmHelper
);
}
...
...
@@ -26,7 +26,7 @@ public class GcmInstanceIDListenerService extends InstanceIDListenerService {
}
private
void
updateGcmToken
(
RealmHelper
realmHelper
)
{
final
List
<
PublicSetting
>
results
=
realmHelper
.
executeTransactionForReadResults
(
final
List
<
Realm
PublicSetting
>
results
=
realmHelper
.
executeTransactionForReadResults
(
GcmPushSettingHelper:
:
queryForGcmPushEnabled
);
final
boolean
gcmPushEnabled
=
GcmPushSettingHelper
.
isGcmPushEnabled
(
results
);
...
...
app/src/main/java/chat/rocket/android/renderer/FileUploadingRenderer.java
View file @
27d2d71b
...
...
@@ -4,7 +4,7 @@ import android.content.Context;
import
android.widget.ProgressBar
;
import
android.widget.TextView
;
import
chat.rocket.
android.model
.internal.FileUploading
;
import
chat.rocket.
persistence.realm.models
.internal.FileUploading
;
/**
* rendering FileUploading status.
...
...
app/src/main/java/chat/rocket/android/renderer/MessageRenderer.java
View file @
27d2d71b
...
...
@@ -9,9 +9,9 @@ import chat.rocket.android.R;
import
chat.rocket.android.helper.Avatar
;
import
chat.rocket.android.helper.DateTime
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.android.widget.RocketChatAvatar
;
import
chat.rocket.android.widget.message.RocketChatMessageAttachmentsLayout
;
import
chat.rocket.android.widget.message.RocketChatMessageLayout
;
...
...
app/src/main/java/chat/rocket/android/renderer/UserRenderer.java
View file @
27d2d71b
...
...
@@ -7,7 +7,7 @@ import android.widget.TextView;
import
chat.rocket.android.R
;
import
chat.rocket.android.helper.Avatar
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model.core
.User
;
import
chat.rocket.
core.models
.User
;
import
chat.rocket.android.widget.RocketChatAvatar
;
/**
...
...
app/src/main/java/chat/rocket/android/service/ConnectivityManagerApi.java
View file @
27d2d71b
...
...
@@ -3,6 +3,7 @@ package chat.rocket.android.service;
import
android.support.annotation.Nullable
;
import
java.util.List
;
import
chat.rocket.core.models.ServerInfo
;
import
rx.Observable
;
import
rx.Single
;
...
...
app/src/main/java/chat/rocket/android/service/ConnectivityManagerInternal.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
service
;
import
java.util.List
;
import
chat.rocket.core.models.ServerInfo
;
/**
* interfaces used for RocketChatService and RocketChatwebSocketThread.
...
...
app/src/main/java/chat/rocket/android/service/RealmBasedConnectivityManager.java
View file @
27d2d71b
...
...
@@ -13,6 +13,8 @@ import java.util.Map;
import
java.util.concurrent.TimeUnit
;
import
chat.rocket.android.helper.RxHelper
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.core.models.ServerInfo
;
import
chat.rocket.persistence.realm.models.RealmBasedServerInfo
;
import
hugo.weaving.DebugLog
;
import
rx.Observable
;
import
rx.Single
;
...
...
@@ -49,7 +51,7 @@ import rx.subjects.PublishSubject;
public
void
resetConnectivityStateList
()
{
serverConnectivityList
.
clear
();
for
(
ServerInfo
serverInfo
:
RealmBasedServerInfo
.
getServerInfoList
())
{
serverConnectivityList
.
put
(
serverInfo
.
hostname
,
ServerConnectivity
.
STATE_DISCONNECTED
);
serverConnectivityList
.
put
(
serverInfo
.
getHostname
()
,
ServerConnectivity
.
STATE_DISCONNECTED
);
}
}
...
...
app/src/main/java/chat/rocket/android/service/RocketChatWebSocketThread.java
View file @
27d2d71b
...
...
@@ -14,7 +14,8 @@ import chat.rocket.android.api.MethodCallHelper;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.android.model.internal.Session
;
import
chat.rocket.core.models.ServerInfo
;
import
chat.rocket.persistence.realm.models.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.android.service.ddp.base.ActiveUsersSubscriber
;
...
...
@@ -225,7 +226,7 @@ public class RocketChatWebSocketThread extends HandlerThread {
.
flatMap
(
_val
->
Single
.
fromEmitter
(
emitter
->
{
ServerInfo
info
=
connectivityManager
.
getServerInfoForHost
(
hostname
);
RCLog
.
d
(
"DDPClient#connect"
);
ddpClient
.
connect
(
info
.
session
,
!
info
.
insecure
)
ddpClient
.
connect
(
info
.
getSession
(),
info
.
isSecure
()
)
.
onSuccessTask
(
task
->
{
final
String
newSession
=
task
.
getResult
().
session
;
connectivityManager
.
notifyConnectionEstablished
(
hostname
,
newSession
);
...
...
app/src/main/java/chat/rocket/android/service/ServerInfo.java
deleted
100644 → 0
View file @
df93fe8b
package
chat
.
rocket
.
android
.
service
;
/**
* Stores information just for required for initializing connectivity manager.
*/
public
class
ServerInfo
{
public
final
String
hostname
;
public
final
String
name
;
/*package*/
final
String
session
;
public
final
boolean
insecure
;
public
ServerInfo
(
String
hostname
,
String
name
,
String
session
,
boolean
insecure
)
{
this
.
hostname
=
hostname
;
this
.
name
=
name
;
this
.
session
=
session
;
this
.
insecure
=
insecure
;
}
}
app/src/main/java/chat/rocket/android/service/ddp/base/ActiveUsersSubscriber.java
View file @
27d2d71b
...
...
@@ -5,7 +5,7 @@ import io.realm.RealmObject;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
app/src/main/java/chat/rocket/android/service/ddp/base/LoginServiceConfigurationSubscriber.java
View file @
27d2d71b
...
...
@@ -3,7 +3,7 @@ package chat.rocket.android.service.ddp.base;
import
android.content.Context
;
import
io.realm.RealmObject
;
import
chat.rocket.
android.model.ddp.
MeteorLoginServiceConfiguration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
MeteorLoginServiceConfiguration
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
@@ -28,6 +28,6 @@ public class LoginServiceConfigurationSubscriber extends AbstractBaseSubscriber
@Override
protected
Class
<?
extends
RealmObject
>
getModelClass
()
{
return
MeteorLoginServiceConfiguration
.
class
;
return
Realm
MeteorLoginServiceConfiguration
.
class
;
}
}
app/src/main/java/chat/rocket/android/service/ddp/base/UserDataSubscriber.java
View file @
27d2d71b
...
...
@@ -5,7 +5,7 @@ import io.realm.RealmObject;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
app/src/main/java/chat/rocket/android/service/ddp/stream/StreamNotifyUserSubscriptionsChanged.java
View file @
27d2d71b
...
...
@@ -5,7 +5,7 @@ import io.realm.RealmObject;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model.ddp.RoomSubscription
;
import
chat.rocket.
persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
@@ -23,12 +23,12 @@ public class StreamNotifyUserSubscriptionsChanged extends AbstractStreamNotifyUs
@Override
protected
Class
<?
extends
RealmObject
>
getModelClass
()
{
return
R
oomSubscription
.
class
;
return
R
ealmRoom
.
class
;
}
@Override
protected
JSONObject
customizeFieldJson
(
JSONObject
json
)
throws
JSONException
{
return
R
oomSubscription
.
customizeJson
(
super
.
customizeFieldJson
(
json
));
return
R
ealmRoom
.
customizeJson
(
super
.
customizeFieldJson
(
json
));
}
@Override
...
...
app/src/main/java/chat/rocket/android/service/ddp/stream/StreamRoomMessage.java
View file @
27d2d71b
...
...
@@ -5,7 +5,7 @@ import io.realm.RealmObject;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
app/src/main/java/chat/rocket/android/service/internal/AbstractRocketChatCacheObserver.java
View file @
27d2d71b
...
...
@@ -5,7 +5,7 @@ import android.content.SharedPreferences;
import
chat.rocket.android.RocketChatCache
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.
android.model.ddp.RoomSubscription
;
import
chat.rocket.
persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.Registrable
;
...
...
@@ -28,8 +28,8 @@ public abstract class AbstractRocketChatCacheObserver implements Registrable {
private
void
updateRoomIdWith
(
SharedPreferences
prefs
)
{
String
roomId
=
prefs
.
getString
(
RocketChatCache
.
KEY_SELECTED_ROOM_ID
,
null
);
if
(!
TextUtils
.
isEmpty
(
roomId
))
{
R
oomSubscription
room
=
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
R
oomSubscription
.
class
).
equalTo
(
"rid"
,
roomId
).
findFirst
());
R
ealmRoom
room
=
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
R
ealmRoom
.
class
).
equalTo
(
"rid"
,
roomId
).
findFirst
());
if
(
room
!=
null
)
{
if
(
this
.
roomId
==
null
||
!
this
.
roomId
.
equals
(
roomId
))
{
this
.
roomId
=
roomId
;
...
...
app/src/main/java/chat/rocket/android/service/observer/CurrentUserObserver.java
View file @
27d2d71b
...
...
@@ -8,7 +8,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
import
chat.rocket.android.service.Registrable
;
...
...
app/src/main/java/chat/rocket/android/service/observer/FileUploadingToS3Observer.java
View file @
27d2d71b
...
...
@@ -15,8 +15,8 @@ import chat.rocket.android.api.FileUploadingHelper;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.OkHttpHelper
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.internal.FileUploading
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.internal.FileUploading
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
import
okhttp3.MediaType
;
...
...
app/src/main/java/chat/rocket/android/service/observer/FileUploadingWithUfsObserver.java
View file @
27d2d71b
...
...
@@ -13,10 +13,10 @@ import chat.rocket.android.api.FileUploadingHelper;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.OkHttpHelper
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
android.model
.internal.FileUploading
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.internal.FileUploading
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
import
okhttp3.MediaType
;
...
...
app/src/main/java/chat/rocket/android/service/observer/GcmPushRegistrationObserver.java
View file @
27d2d71b
...
...
@@ -13,11 +13,11 @@ import bolts.Task;
import
chat.rocket.android.RocketChatCache
;
import
chat.rocket.android.api.RaixPushHelper
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model.ddp.
PublicSetting
;
import
chat.rocket.
android.model.ddp
.PublicSettingsConstants
;
import
chat.rocket.
android.model
.ddp.RealmUser
;
import
chat.rocket.
android.model
.internal.GcmPushRegistration
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
PublicSetting
;
import
chat.rocket.
core
.PublicSettingsConstants
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmUser
;
import
chat.rocket.
persistence.realm.models
.internal.GcmPushRegistration
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
@@ -66,7 +66,7 @@ public class GcmPushRegistrationObserver extends AbstractModelObserver<GcmPushRe
}
private
Task
<
Void
>
registerGcmTokenForServer
()
throws
IOException
{
final
String
senderId
=
PublicSetting
final
String
senderId
=
Realm
PublicSetting
.
getString
(
realmHelper
,
PublicSettingsConstants
.
Push
.
GCM_PROJECT_NUMBER
,
""
).
trim
();
final
String
gcmToken
=
getGcmToken
(
senderId
);
...
...
app/src/main/java/chat/rocket/android/service/observer/GetUsersOfRoomsProcedureObserver.java
View file @
27d2d71b
...
...
@@ -9,8 +9,8 @@ import java.util.List;
import
bolts.Task
;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.internal.GetUsersOfRoomsProcedure
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.internal.GetUsersOfRoomsProcedure
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
app/src/main/java/chat/rocket/android/service/observer/LoadMessageProcedureObserver.java
View file @
27d2d71b
...
...
@@ -10,9 +10,9 @@ import java.util.List;
import
bolts.Task
;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
android.model
.internal.LoadMessageProcedure
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
import
chat.rocket.
persistence.realm.models
.internal.LoadMessageProcedure
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
app/src/main/java/chat/rocket/android/service/observer/MethodCallObserver.java
View file @
27d2d71b
...
...
@@ -8,8 +8,8 @@ import org.json.JSONObject;
import
java.util.List
;
import
chat.rocket.android.helper.CheckSum
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.internal.MethodCall
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.internal.MethodCall
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
import
chat.rocket.android_ddp.DDPClientCallback
;
...
...
app/src/main/java/chat/rocket/android/service/observer/NewMessageObserver.java
View file @
27d2d71b
...
...
@@ -9,8 +9,8 @@ import java.util.List;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model
.ddp.RealmMessage
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
persistence.realm.models
.ddp.RealmMessage
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
app/src/main/java/chat/rocket/android/service/observer/PushSettingsObserver.java
View file @
27d2d71b
...
...
@@ -6,12 +6,12 @@ import io.realm.RealmResults;
import
java.util.List
;
import
chat.rocket.android.helper.GcmPushSettingHelper
;
import
chat.rocket.
android.model.ddp.
PublicSetting
;
import
chat.rocket.
android.model
.internal.GcmPushRegistration
;
import
chat.rocket.
persistence.realm.models.ddp.Realm
PublicSetting
;
import
chat.rocket.
persistence.realm.models
.internal.GcmPushRegistration
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
public
class
PushSettingsObserver
extends
AbstractModelObserver
<
PublicSetting
>
{
public
class
PushSettingsObserver
extends
AbstractModelObserver
<
Realm
PublicSetting
>
{
public
PushSettingsObserver
(
Context
context
,
String
hostname
,
RealmHelper
realmHelper
,
DDPClientRef
ddpClientRef
)
{
...
...
@@ -19,12 +19,12 @@ public class PushSettingsObserver extends AbstractModelObserver<PublicSetting> {
}
@Override
public
RealmResults
<
PublicSetting
>
queryItems
(
Realm
realm
)
{
public
RealmResults
<
Realm
PublicSetting
>
queryItems
(
Realm
realm
)
{
return
GcmPushSettingHelper
.
queryForGcmPushEnabled
(
realm
);
}
@Override
public
void
onUpdateResults
(
List
<
PublicSetting
>
results
)
{
public
void
onUpdateResults
(
List
<
Realm
PublicSetting
>
results
)
{
boolean
gcmPushEnabled
=
GcmPushSettingHelper
.
isGcmPushEnabled
(
results
);
if
(
gcmPushEnabled
)
{
...
...
app/src/main/java/chat/rocket/android/service/observer/SessionObserver.java
View file @
27d2d71b
...
...
@@ -8,10 +8,10 @@ import java.util.List;
import
chat.rocket.android.RocketChatCache
;
import
chat.rocket.android.api.RaixPushHelper
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.
android.model
.internal.GetUsersOfRoomsProcedure
;
import
chat.rocket.
android.model
.internal.LoadMessageProcedure
;
import
chat.rocket.
android.model
.internal.MethodCall
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
persistence.realm.models
.internal.GetUsersOfRoomsProcedure
;
import
chat.rocket.
persistence.realm.models
.internal.LoadMessageProcedure
;
import
chat.rocket.
persistence.realm.models
.internal.MethodCall
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
import
chat.rocket.android.service.internal.StreamRoomMessageManager
;
...
...
app/src/main/java/chat/rocket/android/service/observer/TokenLoginObserver.java
View file @
27d2d71b
...
...
@@ -7,7 +7,7 @@ import io.realm.RealmResults;
import
java.util.List
;
import
chat.rocket.android.api.MethodCallHelper
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.
android.model
.internal.Session
;
import
chat.rocket.
persistence.realm.models
.internal.Session
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.android.service.DDPClientRef
;
...
...
gradle.properties
View file @
27d2d71b
...
...
@@ -6,8 +6,12 @@
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs
=
-Xmx1536m
#
org.gradle.jvmargs=-Xmx1536m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
org.gradle.jvmargs
=
-Xmx6144M
#org.gradle.parallel=true
android.enableBuildCache
=
true
\ No newline at end of file
persistence-realm/build.gradle
View file @
27d2d71b
apply
plugin:
'com.android.library'
apply
plugin:
'realm-android'
apply
plugin:
'com.jakewharton.hugo'
apply
plugin:
'me.tatarka.retrolambda'
buildscript
{
...
...
@@ -11,6 +12,7 @@ buildscript {
classpath
rootProject
.
ext
.
realmPlugin
classpath
rootProject
.
ext
.
retroLambdaPlugin
classpath
rootProject
.
ext
.
retroLambdaPatch
classpath
'com.jakewharton.hugo:hugo-plugin:1.2.1'
}
}
...
...
@@ -39,6 +41,9 @@ android {
dependencies
{
testCompile
'junit:junit:4.12'
compile
project
(
':log-wrapper'
)
compile
project
(
':rocket-chat-core'
)
compile
'io.reactivex:rxjava:1.2.3'
compile
'io.reactivex:rxandroid:1.2.1'
compile
rootProject
.
ext
.
boltsTask
compile
rootProject
.
ext
.
supportAnnotations
compile
rootProject
.
ext
.
supportAppCompat
...
...
persistence-realm/src/main/java/chat/rocket/persistence/realm/RealmStore.java
View file @
27d2d71b
...
...
@@ -4,6 +4,8 @@ import io.realm.Realm;
import
io.realm.RealmConfiguration
;
import
java.util.HashMap
;
import
chat.rocket.persistence.realm.modules.RocketChatLibraryModule
;
import
chat.rocket.persistence.realm.modules.RocketChatServerModule
;
public
class
RealmStore
{
public
static
HashMap
<
String
,
RealmConfiguration
>
sStore
=
new
HashMap
<>();
...
...
@@ -11,6 +13,7 @@ public class RealmStore {
private
static
RealmConfiguration
createConfigFor
(
String
name
)
{
return
new
RealmConfiguration
.
Builder
()
.
name
(
name
+
".realm"
)
.
modules
(
new
RocketChatLibraryModule
())
.
deleteRealmIfMigrationNeeded
().
build
();
}
...
...
@@ -37,6 +40,16 @@ public class RealmStore {
return
new
RealmHelper
(
sStore
.
get
(
name
));
}
public
static
RealmHelper
getOrCreateForServerScope
(
String
name
)
{
if
(!
sStore
.
containsKey
(
name
))
{
sStore
.
put
(
name
,
new
RealmConfiguration
.
Builder
()
.
name
(
name
+
".realm"
)
.
modules
(
new
RocketChatServerModule
())
.
deleteRealmIfMigrationNeeded
().
build
());
}
return
new
RealmHelper
(
sStore
.
get
(
name
));
}
public
static
Realm
getRealm
(
String
name
)
{
RealmHelper
realmHelper
=
get
(
name
);
...
...
persistence-realm/src/main/java/chat/rocket/persistence/realm/RocketChatPersistenceRealm.java
0 → 100644
View file @
27d2d71b
package
chat
.
rocket
.
persistence
.
realm
;
import
android.content.Context
;
import
io.realm.Realm
;
import
io.realm.RealmConfiguration
;
import
chat.rocket.persistence.realm.modules.RocketChatLibraryModule
;
public
class
RocketChatPersistenceRealm
{
public
static
void
init
(
Context
context
)
{
Realm
.
init
(
context
);
Realm
.
setDefaultConfiguration
(
new
RealmConfiguration
.
Builder
()
.
name
(
"rocket.chat.persistence.realm"
)
.
modules
(
new
RocketChatLibraryModule
())
.
deleteRealmIfMigrationNeeded
()
.
build
());
}
}
persistence-realm/src/main/java/chat/rocket/persistence/realm/helpers/LogcatIfError.java
0 → 100644
View file @
27d2d71b
package
chat
.
rocket
.
persistence
.
realm
.
helpers
;
import
bolts.Continuation
;
import
bolts.Task
;
import
chat.rocket.android.log.RCLog
;
/**
* Bolts-Task continuation for just logging if error occurred.
*/
public
class
LogcatIfError
implements
Continuation
{
@Override
public
Object
then
(
Task
task
)
throws
Exception
{
if
(
task
.
isFaulted
())
{
RCLog
.
w
(
task
.
getError
());
}
return
task
;
}
}
app/src/main/java/chat/rocket/android/service
/RealmBasedServerInfo.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/RealmBasedServerInfo.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
service
;
package
chat
.
rocket
.
persistence
.
realm
.
models
;
import
android.support.annotation.Nullable
;
import
android.text.TextUtils
;
...
...
@@ -9,6 +9,7 @@ import org.json.JSONObject;
import
java.util.ArrayList
;
import
java.util.List
;
import
chat.rocket.core.models.ServerInfo
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmStore
;
...
...
@@ -16,7 +17,7 @@ import chat.rocket.persistence.realm.RealmStore;
* Backend implementation to store ServerInfo.
*/
public
class
RealmBasedServerInfo
extends
RealmObject
{
private
static
final
String
DB_NAME
=
"serverlist"
;
private
static
final
String
DB_NAME
=
"server
.
list"
;
@PrimaryKey
private
String
hostname
;
private
String
name
;
...
...
@@ -31,21 +32,26 @@ public class RealmBasedServerInfo extends RealmObject {
}
ServerInfo
getServerInfo
()
{
return
new
ServerInfo
(
hostname
,
name
,
session
,
insecure
);
return
ServerInfo
.
builder
()
.
setHostname
(
hostname
)
.
setName
(
name
)
.
setSession
(
session
)
.
setSecure
(!
insecure
)
.
build
();
}
static
RealmHelper
getRealm
()
{
return
RealmStore
.
getOrCreate
(
DB_NAME
);
public
static
RealmHelper
getRealm
()
{
return
RealmStore
.
getOrCreate
ForServerScope
(
DB_NAME
);
}
static
void
addOrUpdate
(
String
hostname
,
String
name
)
{
public
static
void
addOrUpdate
(
String
hostname
,
String
name
)
{
getRealm
().
executeTransaction
(
realm
->
realm
.
createOrUpdateObjectFromJson
(
RealmBasedServerInfo
.
class
,
new
JSONObject
()
.
put
(
ColumnName
.
HOSTNAME
,
hostname
)
.
put
(
ColumnName
.
NAME
,
TextUtils
.
isEmpty
(
name
)
?
JSONObject
.
NULL
:
name
)));
}
static
void
remove
(
String
hostname
)
{
public
static
void
remove
(
String
hostname
)
{
getRealm
().
executeTransaction
(
realm
->
{
realm
.
where
(
RealmBasedServerInfo
.
class
).
equalTo
(
ColumnName
.
HOSTNAME
,
hostname
)
.
findAll
()
...
...
@@ -54,7 +60,7 @@ public class RealmBasedServerInfo extends RealmObject {
});
}
static
void
updateSession
(
String
hostname
,
String
session
)
{
public
static
void
updateSession
(
String
hostname
,
String
session
)
{
RealmBasedServerInfo
impl
=
getRealm
().
executeTransactionForRead
(
realm
->
realm
.
where
(
RealmBasedServerInfo
.
class
).
equalTo
(
ColumnName
.
HOSTNAME
,
hostname
).
findFirst
());
...
...
@@ -67,13 +73,14 @@ public class RealmBasedServerInfo extends RealmObject {
}
}
static
@Nullable
ServerInfo
getServerInfoForHost
(
String
hostname
)
{
@Nullable
public
static
ServerInfo
getServerInfoForHost
(
String
hostname
)
{
RealmBasedServerInfo
impl
=
getRealm
().
executeTransactionForRead
(
realm
->
realm
.
where
(
RealmBasedServerInfo
.
class
).
equalTo
(
ColumnName
.
HOSTNAME
,
hostname
).
findFirst
());
return
impl
==
null
?
null
:
impl
.
getServerInfo
();
}
static
void
setInsecure
(
String
hostname
,
boolean
insecure
)
{
public
static
void
setInsecure
(
String
hostname
,
boolean
insecure
)
{
RealmBasedServerInfo
impl
=
getRealm
().
executeTransactionForRead
(
realm
->
realm
.
where
(
RealmBasedServerInfo
.
class
).
equalTo
(
ColumnName
.
HOSTNAME
,
hostname
).
findFirst
());
...
...
@@ -86,7 +93,7 @@ public class RealmBasedServerInfo extends RealmObject {
}
}
static
List
<
ServerInfo
>
getServerInfoList
()
{
public
static
List
<
ServerInfo
>
getServerInfoList
()
{
List
<
RealmBasedServerInfo
>
results
=
getRealm
().
executeTransactionForReadResults
(
realm
->
realm
.
where
(
RealmBasedServerInfo
.
class
).
findAll
());
ArrayList
<
ServerInfo
>
list
=
new
ArrayList
<>();
...
...
app/src/main/java/chat/rocket/android/model
/ddp/RealmEmail.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/ddp/RealmEmail.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
import
chat.rocket.
android.model.core
.Email
;
import
chat.rocket.
core.models
.Email
;
/**
* Login-RealmUser's email.
...
...
app/src/main/java/chat/rocket/android/model
/ddp/RealmMessage.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/ddp/RealmMessage.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
...
...
@@ -8,14 +8,14 @@ import org.json.JSONObject;
import
java.util.ArrayList
;
import
java.util.List
;
import
chat.rocket.
android.model
.JsonConstants
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
android.model.core
.Attachment
;
import
chat.rocket.
android.model.core
.AttachmentAuthor
;
import
chat.rocket.
android.model.core
.AttachmentField
;
import
chat.rocket.
android.model.core
.AttachmentTitle
;
import
chat.rocket.
android.model.core
.Message
;
import
chat.rocket.
android.model.core
.WebContent
;
import
chat.rocket.
core
.JsonConstants
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.
core.models
.Attachment
;
import
chat.rocket.
core.models
.AttachmentAuthor
;
import
chat.rocket.
core.models
.AttachmentField
;
import
chat.rocket.
core.models
.AttachmentTitle
;
import
chat.rocket.
core.models
.Message
;
import
chat.rocket.
core.models
.WebContent
;
/**
* RealmMessage.
...
...
app/src/main/java/chat/rocket/android/model/ddp/
MeteorLoginServiceConfiguration.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models/ddp/Realm
MeteorLoginServiceConfiguration.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
...
...
@@ -8,7 +8,7 @@ import io.realm.annotations.PrimaryKey;
*/
@SuppressWarnings
({
"PMD.ShortClassName"
,
"PMD.ShortVariable"
,
"PMD.MethodNamingConventions"
,
"PMD.VariableNamingConventions"
})
public
class
MeteorLoginServiceConfiguration
public
class
Realm
MeteorLoginServiceConfiguration
extends
RealmObject
{
public
static
final
String
ID
=
"_id"
;
...
...
app/src/main/java/chat/rocket/android/model
/ddp/RealmPreferences.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/ddp/RealmPreferences.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
import
chat.rocket.
android.model.core
.Preferences
;
import
chat.rocket.
core.models
.Preferences
;
@SuppressWarnings
({
"PMD.ShortVariable"
})
public
class
RealmPreferences
extends
RealmObject
{
...
...
app/src/main/java/chat/rocket/android/model/ddp/
PublicSetting.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models/ddp/Realm
PublicSetting.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
android.support.annotation.Nullable
;
import
io.realm.RealmObject
;
...
...
@@ -6,7 +6,7 @@ import io.realm.annotations.PrimaryKey;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model
.JsonConstants
;
import
chat.rocket.
core
.JsonConstants
;
import
chat.rocket.persistence.realm.RealmHelper
;
/**
...
...
@@ -14,7 +14,7 @@ import chat.rocket.persistence.realm.RealmHelper;
*/
@SuppressWarnings
({
"PMD.ShortClassName"
,
"PMD.ShortVariable"
,
"PMD.MethodNamingConventions"
,
"PMD.VariableNamingConventions"
})
public
class
PublicSetting
extends
RealmObject
{
public
class
Realm
PublicSetting
extends
RealmObject
{
public
static
final
String
ID
=
"_id"
;
public
static
final
String
GROUP
=
"group"
;
...
...
@@ -42,15 +42,15 @@ public class PublicSetting extends RealmObject {
}
@Nullable
private
static
PublicSetting
get
(
RealmHelper
realmHelper
,
String
_id
)
{
private
static
Realm
PublicSetting
get
(
RealmHelper
realmHelper
,
String
_id
)
{
return
realmHelper
.
executeTransactionForRead
(
realm
->
realm
.
where
(
PublicSetting
.
class
).
equalTo
(
ID
,
_id
).
findFirst
());
realm
.
where
(
Realm
PublicSetting
.
class
).
equalTo
(
ID
,
_id
).
findFirst
());
}
@Nullable
public
static
String
getString
(
RealmHelper
realmHelper
,
String
_id
,
String
defaultValue
)
{
PublicSetting
setting
=
get
(
realmHelper
,
_id
);
Realm
PublicSetting
setting
=
get
(
realmHelper
,
_id
);
if
(
setting
!=
null
)
{
return
setting
.
getValue
();
}
...
...
@@ -59,7 +59,7 @@ public class PublicSetting extends RealmObject {
public
static
boolean
getBoolean
(
RealmHelper
realmHelper
,
String
_id
,
boolean
defaultValue
)
{
PublicSetting
setting
=
get
(
realmHelper
,
_id
);
Realm
PublicSetting
setting
=
get
(
realmHelper
,
_id
);
if
(
setting
!=
null
)
{
return
Boolean
.
parseBoolean
(
setting
.
getValue
());
}
...
...
app/src/main/java/chat/rocket/android/model/ddp/RoomSubscription
.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models/ddp/RealmRoom
.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model
.JsonConstants
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
core
.JsonConstants
;
import
chat.rocket.
core.models
.Room
;
/**
* Chat Room(Subscription).
*/
@SuppressWarnings
({
"PMD.ShortClassName"
,
"PMD.ShortVariable"
,
"PMD.MethodNamingConventions"
,
"PMD.VariableNamingConventions"
})
public
class
R
oomSubscription
extends
RealmObject
{
public
class
R
ealmRoom
extends
RealmObject
{
public
static
final
String
ID
=
"_id"
;
public
static
final
String
ROOM_ID
=
"rid"
;
...
...
app/src/main/java/chat/rocket/android/model
/ddp/RealmSettings.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/ddp/RealmSettings.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
import
chat.rocket.
android.model.core
.Settings
;
import
chat.rocket.
core.models
.Settings
;
@SuppressWarnings
({
"PMD.ShortVariable"
})
public
class
RealmSettings
extends
RealmObject
{
...
...
app/src/main/java/chat/rocket/android/model
/ddp/RealmUser.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/ddp/RealmUser.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
ddp
;
import
io.realm.Realm
;
import
io.realm.RealmList
;
...
...
@@ -8,8 +8,8 @@ import io.realm.annotations.PrimaryKey;
import
java.util.ArrayList
;
import
java.util.List
;
import
chat.rocket.
android.model.core
.Email
;
import
chat.rocket.
android.model.core
.User
;
import
chat.rocket.
core.models
.Email
;
import
chat.rocket.
core.models
.User
;
/**
* RealmUser.
...
...
app/src/main/java/chat/rocket/android/model
/internal/FileUploading.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/internal/FileUploading.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
internal
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
internal
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
...
...
app/src/main/java/chat/rocket/android/model
/internal/GcmPushRegistration.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/internal/GcmPushRegistration.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
internal
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
internal
;
import
io.realm.Realm
;
import
io.realm.RealmObject
;
...
...
@@ -7,7 +7,7 @@ import io.realm.annotations.PrimaryKey;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
core
.SyncState
;
/**
* just stores gcm registration status.
...
...
app/src/main/java/chat/rocket/android/model
/internal/GetUsersOfRoomsProcedure.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/internal/GetUsersOfRoomsProcedure.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
internal
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
internal
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
...
...
app/src/main/java/chat/rocket/android/model
/internal/LoadMessageProcedure.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/internal/LoadMessageProcedure.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
internal
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
internal
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
import
chat.rocket.
android.model.core
.RoomHistoryState
;
import
chat.rocket.
core.models
.RoomHistoryState
;
/**
* Load messages in the room.
...
...
app/src/main/java/chat/rocket/android/model
/internal/MethodCall.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/internal/MethodCall.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
internal
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
internal
;
import
android.content.Context
;
import
android.support.annotation.Nullable
;
import
android.text.TextUtils
;
import
io.realm.RealmObject
;
import
io.realm.annotations.PrimaryKey
;
import
org.json.JSONObject
;
...
...
@@ -10,13 +9,11 @@ import java.util.HashMap;
import
java.util.UUID
;
import
bolts.Task
;
import
bolts.TaskCompletionSource
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.android.log.RCLog
;
import
chat.rocket.
android.model
.SyncState
;
import
chat.rocket.
core
.SyncState
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.RealmObjectObserver
;
import
chat.rocket.
android.service.ConnectivityManage
r
;
import
chat.rocket.
persistence.realm.helpers.LogcatIfErro
r
;
public
class
MethodCall
extends
RealmObject
{
...
...
@@ -39,8 +36,7 @@ public class MethodCall extends RealmObject {
/**
* insert a new record to request a method call.
*/
public
static
Task
<
String
>
execute
(
@Nullable
final
Context
context
,
RealmHelper
realmHelper
,
String
name
,
String
paramsJson
,
public
static
Task
<
String
>
execute
(
RealmHelper
realmHelper
,
String
name
,
String
paramsJson
,
long
timeout
)
{
final
String
newId
=
UUID
.
randomUUID
().
toString
();
TaskCompletionSource
<
String
>
task
=
new
TaskCompletionSource
<>();
...
...
@@ -87,11 +83,6 @@ public class MethodCall extends RealmObject {
});
observer
.
sub
();
REF_MAP
.
put
(
newId
,
observer
);
if
(
context
!=
null
)
{
ConnectivityManager
.
getInstance
(
context
.
getApplicationContext
())
.
keepAliveServer
();
}
}
return
null
;
});
...
...
app/src/main/java/chat/rocket/android/model
/internal/Session.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm/models
/internal/Session.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
internal
;
package
chat
.
rocket
.
persistence
.
realm
.
models
.
internal
;
import
android.text.TextUtils
;
import
io.realm.Realm
;
import
io.realm.RealmObject
;
import
io.realm.RealmQuery
;
import
io.realm.annotations.PrimaryKey
;
import
org.json.JSONObject
;
import
chat.rocket.android.helper.LogcatIfError
;
import
chat.rocket.android.helper.TextUtils
;
import
chat.rocket.persistence.realm.RealmHelper
;
import
chat.rocket.persistence.realm.helpers.LogcatIfError
;
import
hugo.weaving.DebugLog
;
/**
...
...
persistence-realm/src/main/java/chat/rocket/persistence/realm/modules/RocketChatLibraryModule.java
0 → 100644
View file @
27d2d71b
package
chat
.
rocket
.
persistence
.
realm
.
modules
;
import
io.realm.annotations.RealmModule
;
@RealmModule
(
library
=
true
,
allClasses
=
true
)
public
class
RocketChatLibraryModule
{
}
persistence-realm/src/main/java/chat/rocket/persistence/realm/modules/RocketChatServerModule.java
0 → 100644
View file @
27d2d71b
package
chat
.
rocket
.
persistence
.
realm
.
modules
;
import
io.realm.annotations.RealmModule
;
import
chat.rocket.persistence.realm.models.RealmBasedServerInfo
;
@RealmModule
(
library
=
true
,
classes
=
{
RealmBasedServerInfo
.
class
})
public
class
RocketChatServerModule
{
}
app/src/main/java/chat/rocket/android
/repositories/RealmMessageRepository.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm
/repositories/RealmMessageRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
;
package
chat
.
rocket
.
persistence
.
realm
.
repositories
;
import
android.os.Looper
;
import
io.realm.Realm
;
...
...
@@ -6,12 +6,12 @@ import io.realm.RealmResults;
import
org.json.JSONObject
;
import
chat.rocket.android.model.core.Message
;
import
chat.rocket.android.model.core.Room
;
import
chat.rocket.android.model.ddp.RealmMessage
;
import
chat.rocket.android.model.ddp.RealmUser
;
import
chat.rocket.android.repositories.core.MessageRepository
;
import
chat.rocket.core.models.Message
;
import
chat.rocket.core.models.Room
;
import
chat.rocket.core.repositories.MessageRepository
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.persistence.realm.models.ddp.RealmMessage
;
import
chat.rocket.persistence.realm.models.ddp.RealmUser
;
import
rx.Observable
;
import
rx.Single
;
import
rx.android.schedulers.AndroidSchedulers
;
...
...
app/src/main/java/chat/rocket/android
/repositories/RealmRepository.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm
/repositories/RealmRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
;
package
chat
.
rocket
.
persistence
.
realm
.
repositories
;
import
android.os.Handler
;
import
android.os.Looper
;
...
...
app/src/main/java/chat/rocket/android
/repositories/RealmRoomRepository.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm
/repositories/RealmRoomRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
;
package
chat
.
rocket
.
persistence
.
realm
.
repositories
;
import
android.os.Looper
;
import
io.realm.Realm
;
...
...
@@ -6,12 +6,12 @@ import io.realm.RealmResults;
import
java.util.ArrayList
;
import
java.util.List
;
import
chat.rocket.android.model.core.Room
;
import
chat.rocket.android.model.core.RoomHistoryState
;
import
chat.rocket.android.model.ddp.RoomSubscription
;
import
chat.rocket.android.model.internal.LoadMessageProcedure
;
import
chat.rocket.android.repositories.core.RoomRepository
;
import
chat.rocket.core.models.Room
;
import
chat.rocket.core.models.RoomHistoryState
;
import
chat.rocket.core.repositories.RoomRepository
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.persistence.realm.models.ddp.RealmRoom
;
import
chat.rocket.persistence.realm.models.internal.LoadMessageProcedure
;
import
rx.Observable
;
import
rx.Single
;
import
rx.android.schedulers.AndroidSchedulers
;
...
...
@@ -34,8 +34,8 @@ public class RealmRoomRepository extends RealmRepository implements RoomReposito
return
Observable
.
just
(
null
);
}
return
realm
.
where
(
R
oomSubscription
.
class
)
.
equalTo
(
R
oomSubscription
.
OPEN
,
true
)
return
realm
.
where
(
R
ealmRoom
.
class
)
.
equalTo
(
R
ealmRoom
.
OPEN
,
true
)
.
findAll
()
.
asObservable
()
.
unsubscribeOn
(
AndroidSchedulers
.
from
(
looper
))
...
...
@@ -56,10 +56,10 @@ public class RealmRoomRepository extends RealmRepository implements RoomReposito
return
Observable
.
just
(
null
);
}
return
realm
.
where
(
R
oomSubscription
.
class
)
.
equalTo
(
R
oomSubscription
.
ROOM_ID
,
roomId
)
return
realm
.
where
(
R
ealmRoom
.
class
)
.
equalTo
(
R
ealmRoom
.
ROOM_ID
,
roomId
)
.
findFirst
()
.<
R
oomSubscription
>
asObservable
()
.<
R
ealmRoom
>
asObservable
()
.
unsubscribeOn
(
AndroidSchedulers
.
from
(
looper
))
.
doOnUnsubscribe
(()
->
close
(
realm
,
looper
))
.
filter
(
roomSubscription
->
roomSubscription
!=
null
&&
roomSubscription
.
isLoaded
()
...
...
@@ -123,13 +123,13 @@ public class RealmRoomRepository extends RealmRepository implements RoomReposito
});
}
private
List
<
Room
>
toList
(
RealmResults
<
R
oomSubscription
>
roomSubscription
s
)
{
int
total
=
r
oomSubscription
s
.
size
();
private
List
<
Room
>
toList
(
RealmResults
<
R
ealmRoom
>
realmRoom
s
)
{
int
total
=
r
ealmRoom
s
.
size
();
final
List
<
Room
>
roomList
=
new
ArrayList
<>(
total
);
for
(
int
i
=
0
;
i
<
total
;
i
++)
{
roomList
.
add
(
r
oomSubscription
s
.
get
(
i
).
asRoom
());
roomList
.
add
(
r
ealmRoom
s
.
get
(
i
).
asRoom
());
}
return
roomList
;
...
...
app/src/main/java/chat/rocket/android
/repositories/RealmUserRepository.java
→
persistence-realm/src/main/java/chat/rocket/persistence/realm
/repositories/RealmUserRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
;
package
chat
.
rocket
.
persistence
.
realm
.
repositories
;
import
android.os.Looper
;
import
io.realm.Realm
;
import
chat.rocket.android.model.core.User
;
import
chat.rocket.android.model.ddp.RealmUser
;
import
chat.rocket.android.repositories.core.UserRepository
;
import
chat.rocket.core.models.User
;
import
chat.rocket.core.repositories.UserRepository
;
import
chat.rocket.persistence.realm.RealmStore
;
import
chat.rocket.persistence.realm.models.ddp.RealmUser
;
import
rx.Observable
;
import
rx.android.schedulers.AndroidSchedulers
;
...
...
rocket-chat-core/.gitignore
0 → 100644
View file @
27d2d71b
/build
rocket-chat-core/build.gradle
0 → 100644
View file @
27d2d71b
plugins
{
id
"net.ltgt.apt"
version
"0.9"
}
apply
plugin:
'idea'
apply
plugin:
'java'
dependencies
{
compile
fileTree
(
dir:
'libs'
,
include:
[
'*.jar'
])
compile
'com.google.code.findbugs:jsr305:3.0.1'
compile
'io.reactivex:rxjava:1.2.3'
compile
'com.google.auto.value:auto-value:1.3'
apt
'com.google.auto.value:auto-value:1.3'
apt
'com.gabrielittner.auto.value:auto-value-with:1.0.0'
}
sourceCompatibility
=
"1.7"
targetCompatibility
=
"1.7"
app/src/main/java/chat/rocket/android/model
/JsonConstants.java
→
rocket-chat-core/src/main/java/chat/rocket/core
/JsonConstants.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
;
package
chat
.
rocket
.
core
;
public
interface
JsonConstants
{
String
DATE
=
"$date"
;
...
...
app/src/main/java/chat/rocket/android/model/ddp
/PublicSettingsConstants.java
→
rocket-chat-core/src/main/java/chat/rocket/core
/PublicSettingsConstants.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
ddp
;
package
chat
.
rocket
.
core
;
@SuppressWarnings
({
"PMD.ShortClassName"
})
public
interface
PublicSettingsConstants
{
...
...
app/src/main/java/chat/rocket/android/model
/SyncState.java
→
rocket-chat-core/src/main/java/chat/rocket/core
/SyncState.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
;
package
chat
.
rocket
.
core
;
/**
* The sync status of each model.
...
...
app/src/main/java/chat/rocket/android/model/core
/Attachment.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/Attachment.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
import
android.support.annotation.Nullable
;
import
java.util.List
;
import
javax.annotation.Nullable
;
@AutoValue
public
abstract
class
Attachment
{
...
...
app/src/main/java/chat/rocket/android/model/core
/AttachmentAuthor.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/AttachmentAuthor.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
app/src/main/java/chat/rocket/android/model/core
/AttachmentField.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/AttachmentField.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
app/src/main/java/chat/rocket/android/model/core
/AttachmentTitle.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/AttachmentTitle.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
import
android.support
.annotation.Nullable
;
import
javax
.annotation.Nullable
;
@AutoValue
public
abstract
class
AttachmentTitle
{
...
...
app/src/main/java/chat/rocket/android/model/core
/Email.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/Email.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
app/src/main/java/chat/rocket/android/model/core
/Message.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/Message.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
import
android.support.annotation.Nullable
;
import
java.util.List
;
import
javax.annotation.Nullable
;
@AutoValue
public
abstract
class
Message
{
...
...
app/src/main/java/chat/rocket/android/model/core
/Preferences.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/Preferences.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
app/src/main/java/chat/rocket/android/model/core
/Room.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/Room.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
app/src/main/java/chat/rocket/android/model/core
/RoomHistoryState.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/RoomHistoryState.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
rocket-chat-core/src/main/java/chat/rocket/core/models/ServerInfo.java
0 → 100644
View file @
27d2d71b
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
import
javax.annotation.Nullable
;
/**
* Stores information just for required for initializing connectivity manager.
*/
@AutoValue
public
abstract
class
ServerInfo
{
public
abstract
String
getHostname
();
public
abstract
String
getName
();
@Nullable
public
abstract
String
getSession
();
public
abstract
boolean
isSecure
();
public
static
Builder
builder
()
{
return
new
AutoValue_ServerInfo
.
Builder
();
}
@AutoValue
.
Builder
public
abstract
static
class
Builder
{
public
abstract
Builder
setHostname
(
String
hostname
);
public
abstract
Builder
setName
(
String
name
);
public
abstract
Builder
setSession
(
String
session
);
public
abstract
Builder
setSecure
(
boolean
isSecure
);
public
abstract
ServerInfo
build
();
}
}
app/src/main/java/chat/rocket/android/model/core
/Settings.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/Settings.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
...
...
app/src/main/java/chat/rocket/android/model/core
/User.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/User.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
import
android.support.annotation.Nullable
;
import
java.util.List
;
import
javax.annotation.Nullable
;
@AutoValue
public
abstract
class
User
{
...
...
app/src/main/java/chat/rocket/android/model/core
/WebContent.java
→
rocket-chat-core/src/main/java/chat/rocket/core/models
/WebContent.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
model
.
core
;
package
chat
.
rocket
.
core
.
models
;
import
com.google.auto.value.AutoValue
;
import
android.support
.annotation.Nullable
;
import
javax
.annotation.Nullable
;
@AutoValue
public
abstract
class
WebContent
{
...
...
app/src/main/java/chat/rocket/android/repositories/core
/MessageRepository.java
→
rocket-chat-core/src/main/java/chat/rocket/core/repositories
/MessageRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
.
core
;
package
chat
.
rocket
.
core
.
repositories
;
import
chat.rocket.
android.model.core
.Message
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
core.models
.Message
;
import
chat.rocket.
core.models
.Room
;
import
rx.Observable
;
import
rx.Single
;
...
...
app/src/main/java/chat/rocket/android/repositories/core
/RoomRepository.java
→
rocket-chat-core/src/main/java/chat/rocket/core/repositories
/RoomRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
.
core
;
package
chat
.
rocket
.
core
.
repositories
;
import
java.util.List
;
import
chat.rocket.
android.model.core
.Room
;
import
chat.rocket.
android.model.core
.RoomHistoryState
;
import
chat.rocket.
core.models
.Room
;
import
chat.rocket.
core.models
.RoomHistoryState
;
import
rx.Observable
;
import
rx.Single
;
...
...
app/src/main/java/chat/rocket/android/repositories/core
/UserRepository.java
→
rocket-chat-core/src/main/java/chat/rocket/core/repositories
/UserRepository.java
View file @
27d2d71b
package
chat
.
rocket
.
android
.
repositories
.
core
;
package
chat
.
rocket
.
core
.
repositories
;
import
chat.rocket.
android.model.core
.User
;
import
chat.rocket.
core.models
.User
;
import
rx.Observable
;
public
interface
UserRepository
{
...
...
settings.gradle
View file @
27d2d71b
include
':app'
,
':android-ddp'
,
':rocket-chat-android-widgets'
,
':persistence-realm'
,
include
':app'
,
':android-ddp'
,
':rocket-chat-android-widgets'
,
':persistence-realm'
,
':rocket-chat-core'
,
':log-wrapper'
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment