Renamed ServerInfo => ServerStatus

This commit is contained in:
badaix 2016-03-02 23:41:16 +01:00
parent ab9ebbaef7
commit b1d19b0d15
4 changed files with 50 additions and 50 deletions

View file

@ -11,7 +11,7 @@ import android.widget.ArrayAdapter;
import android.widget.ListView; import android.widget.ListView;
import de.badaix.snapcast.control.ClientInfo; import de.badaix.snapcast.control.ClientInfo;
import de.badaix.snapcast.control.ServerInfo; import de.badaix.snapcast.control.ServerStatus;
import de.badaix.snapcast.control.Stream; import de.badaix.snapcast.control.Stream;
@ -39,7 +39,7 @@ public class ClientListFragment extends Fragment {
private OnFragmentInteractionListener mListener; private OnFragmentInteractionListener mListener;
private ClientItem.ClientInfoItemListener clientInfoItemListener; private ClientItem.ClientInfoItemListener clientInfoItemListener;
private ClientInfoAdapter clientInfoAdapter; private ClientInfoAdapter clientInfoAdapter;
private ServerInfo serverInfo = null; private ServerStatus serverStatus = null;
private boolean hideOffline = false; private boolean hideOffline = false;
public ClientListFragment() { public ClientListFragment() {
@ -78,7 +78,7 @@ public class ClientListFragment extends Fragment {
ListView lvClient = (ListView) view.findViewById(R.id.lvClient); ListView lvClient = (ListView) view.findViewById(R.id.lvClient);
clientInfoAdapter = new ClientInfoAdapter(getContext(), clientInfoItemListener); clientInfoAdapter = new ClientInfoAdapter(getContext(), clientInfoItemListener);
clientInfoAdapter.setHideOffline(hideOffline); clientInfoAdapter.setHideOffline(hideOffline);
clientInfoAdapter.updateServer(serverInfo); clientInfoAdapter.updateServer(serverStatus);
lvClient.setAdapter(clientInfoAdapter); lvClient.setAdapter(clientInfoAdapter);
return view; return view;
} }
@ -108,10 +108,10 @@ public class ClientListFragment extends Fragment {
mListener = null; mListener = null;
} }
public void updateServer(ServerInfo serverInfo) { public void updateServer(ServerStatus serverStatus) {
this.serverInfo = serverInfo; this.serverStatus = serverStatus;
if (clientInfoAdapter != null) if (clientInfoAdapter != null)
clientInfoAdapter.updateServer(this.serverInfo); clientInfoAdapter.updateServer(this.serverStatus);
} }
public void setHideOffline(boolean hide) { public void setHideOffline(boolean hide) {
@ -149,7 +149,7 @@ public class ClientListFragment extends Fragment {
private Context context; private Context context;
private ClientItem.ClientInfoItemListener listener; private ClientItem.ClientInfoItemListener listener;
private boolean hideOffline = false; private boolean hideOffline = false;
private ServerInfo serverInfo = new ServerInfo(); private ServerStatus serverStatus = new ServerStatus();
public ClientInfoAdapter(Context context, ClientItem.ClientInfoItemListener listener) { public ClientInfoAdapter(Context context, ClientItem.ClientInfoItemListener listener) {
super(context, 0); super(context, 0);
@ -172,9 +172,9 @@ public class ClientListFragment extends Fragment {
return clientItem; return clientItem;
} }
public void updateServer(final ServerInfo serverInfo) { public void updateServer(final ServerStatus serverStatus) {
if (serverInfo != null) { if (serverStatus != null) {
ClientInfoAdapter.this.serverInfo = serverInfo; ClientInfoAdapter.this.serverStatus = serverStatus;
update(); update();
} }
} }
@ -186,7 +186,7 @@ public class ClientListFragment extends Fragment {
@Override @Override
public void run() { public void run() {
clear(); clear();
for (ClientInfo clientInfo : ClientInfoAdapter.this.serverInfo.getClientInfos()) { for (ClientInfo clientInfo : ClientInfoAdapter.this.serverStatus.getClientInfos()) {
if ((clientInfo != null) && (!hideOffline || clientInfo.isConnected()) && !clientInfo.isDeleted() && clientInfo.getStream().equals(ClientListFragment.this.stream.getId())) if ((clientInfo != null) && (!hideOffline || clientInfo.isConnected()) && !clientInfo.isDeleted() && clientInfo.getStream().equals(ClientListFragment.this.stream.getId()))
add(clientInfo); add(clientInfo);
} }

View file

@ -45,7 +45,7 @@ import java.util.Vector;
import de.badaix.snapcast.control.ClientInfo; import de.badaix.snapcast.control.ClientInfo;
import de.badaix.snapcast.control.RemoteControl; import de.badaix.snapcast.control.RemoteControl;
import de.badaix.snapcast.control.ServerInfo; import de.badaix.snapcast.control.ServerStatus;
import de.badaix.snapcast.control.Stream; import de.badaix.snapcast.control.Stream;
import de.badaix.snapcast.utils.NsdHelper; import de.badaix.snapcast.utils.NsdHelper;
import de.badaix.snapcast.utils.Settings; import de.badaix.snapcast.utils.Settings;
@ -64,7 +64,7 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
private int port = 1704; private int port = 1704;
private int controlPort = 1705; private int controlPort = 1705;
private RemoteControl remoteControl = null; private RemoteControl remoteControl = null;
private ServerInfo serverInfo = null; private ServerStatus serverStatus = null;
private SnapclientService snapclientService; private SnapclientService snapclientService;
private SectionsPagerAdapter sectionsPagerAdapter; private SectionsPagerAdapter sectionsPagerAdapter;
private TabLayout tabLayout; private TabLayout tabLayout;
@ -459,8 +459,8 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
Log.d(TAG, "new latency: " + clientInfo.getLatency() + ", old latency: " + clientInfoOriginal.getLatency()); Log.d(TAG, "new latency: " + clientInfo.getLatency() + ", old latency: " + clientInfoOriginal.getLatency());
if (clientInfo.getLatency() != clientInfoOriginal.getLatency()) if (clientInfo.getLatency() != clientInfoOriginal.getLatency())
remoteControl.setLatency(clientInfo, clientInfo.getLatency()); remoteControl.setLatency(clientInfo, clientInfo.getLatency());
serverInfo.updateClient(clientInfo); serverStatus.updateClient(clientInfo);
sectionsPagerAdapter.updateServer(serverInfo); sectionsPagerAdapter.updateServer(serverStatus);
} }
} }
@ -485,8 +485,8 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
@Override @Override
public void onDisconnected(RemoteControl remoteControl, Exception e) { public void onDisconnected(RemoteControl remoteControl, Exception e) {
Log.d(TAG, "onDisconnected"); Log.d(TAG, "onDisconnected");
serverInfo = new ServerInfo(); serverStatus = new ServerStatus();
sectionsPagerAdapter.updateServer(serverInfo); sectionsPagerAdapter.updateServer(serverStatus);
if (e != null) { if (e != null) {
if (e instanceof UnknownHostException) if (e instanceof UnknownHostException)
setActionbarSubtitle("error: unknown host"); setActionbarSubtitle("error: unknown host");
@ -508,19 +508,19 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
public void onClientEvent(RemoteControl remoteControl, ClientInfo clientInfo, RemoteControl.ClientEvent event) { public void onClientEvent(RemoteControl remoteControl, ClientInfo clientInfo, RemoteControl.ClientEvent event) {
Log.d(TAG, "onClientEvent: " + event.toString()); Log.d(TAG, "onClientEvent: " + event.toString());
if (event == RemoteControl.ClientEvent.deleted) if (event == RemoteControl.ClientEvent.deleted)
serverInfo.removeClient(clientInfo); serverStatus.removeClient(clientInfo);
else else
serverInfo.updateClient(clientInfo); serverStatus.updateClient(clientInfo);
sectionsPagerAdapter.updateServer(serverInfo); sectionsPagerAdapter.updateServer(serverStatus);
} }
@Override @Override
public void onServerInfo(RemoteControl remoteControl, ServerInfo serverInfo) { public void onServerStatus(RemoteControl remoteControl, ServerStatus serverStatus) {
this.serverInfo = serverInfo; this.serverStatus = serverStatus;
for (Stream s : serverInfo.getStreams()) for (Stream s : serverStatus.getStreams())
Log.d(TAG, s.toString()); Log.d(TAG, s.toString());
sectionsPagerAdapter.updateServer(serverInfo); sectionsPagerAdapter.updateServer(serverStatus);
} }
private void setActionbarSubtitle(final String subtitle) { private void setActionbarSubtitle(final String subtitle) {
@ -598,8 +598,8 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
public void onDeleteClicked(final ClientItem clientItem) { public void onDeleteClicked(final ClientItem clientItem) {
final ClientInfo clientInfo = clientItem.getClientInfo(); final ClientInfo clientInfo = clientItem.getClientInfo();
clientInfo.setDeleted(true); clientInfo.setDeleted(true);
serverInfo.updateClient(clientInfo); serverStatus.updateClient(clientInfo);
sectionsPagerAdapter.updateServer(serverInfo); sectionsPagerAdapter.updateServer(serverStatus);
Snackbar mySnackbar = Snackbar.make(findViewById(R.id.myCoordinatorLayout), Snackbar mySnackbar = Snackbar.make(findViewById(R.id.myCoordinatorLayout),
getString(R.string.client_deleted, clientInfo.getVisibleName()), getString(R.string.client_deleted, clientInfo.getVisibleName()),
Snackbar.LENGTH_SHORT); Snackbar.LENGTH_SHORT);
@ -607,8 +607,8 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
@Override @Override
public void onClick(View v) { public void onClick(View v) {
clientInfo.setDeleted(false); clientInfo.setDeleted(false);
serverInfo.updateClient(clientInfo); serverStatus.updateClient(clientInfo);
sectionsPagerAdapter.updateServer(serverInfo); sectionsPagerAdapter.updateServer(serverStatus);
} }
}); });
mySnackbar.setCallback(new Snackbar.Callback() { mySnackbar.setCallback(new Snackbar.Callback() {
@ -617,7 +617,7 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
super.onDismissed(snackbar, event); super.onDismissed(snackbar, event);
if (event != DISMISS_EVENT_ACTION) { if (event != DISMISS_EVENT_ACTION) {
remoteControl.delete(clientInfo); remoteControl.delete(clientInfo);
serverInfo.removeClient(clientInfo); serverStatus.removeClient(clientInfo);
} }
} }
}); });
@ -628,7 +628,7 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
public void onPropertiesClicked(ClientItem clientItem) { public void onPropertiesClicked(ClientItem clientItem) {
Intent intent = new Intent(this, ClientSettingsActivity.class); Intent intent = new Intent(this, ClientSettingsActivity.class);
intent.putExtra("client", clientItem.getClientInfo().toJson().toString()); intent.putExtra("client", clientItem.getClientInfo().toJson().toString());
intent.putExtra("streams", serverInfo.getJsonStreams().toString()); intent.putExtra("streams", serverStatus.getJsonStreams().toString());
intent.setFlags(0); intent.setFlags(0);
startActivityForResult(intent, 1); startActivityForResult(intent, 1);
} }
@ -648,24 +648,24 @@ public class MainActivity extends AppCompatActivity implements ClientListFragmen
super(fm); super(fm);
} }
public void updateServer(final ServerInfo serverInfo) { public void updateServer(final ServerStatus serverStatus) {
MainActivity.this.runOnUiThread(new Runnable() { MainActivity.this.runOnUiThread(new Runnable() {
@Override @Override
public void run() { public void run() {
Log.d(TAG, "updateServer: " + serverInfo.getStreams().size()); Log.d(TAG, "updateServer: " + serverStatus.getStreams().size());
boolean changed = (serverInfo.getStreams().size() != streamCount); boolean changed = (serverStatus.getStreams().size() != streamCount);
while (serverInfo.getStreams().size() > fragments.size()) while (serverStatus.getStreams().size() > fragments.size())
fragments.add(ClientListFragment.newInstance("TODO1")); fragments.add(ClientListFragment.newInstance("TODO1"));
for (int i = 0; i < serverInfo.getStreams().size(); ++i) { for (int i = 0; i < serverStatus.getStreams().size(); ++i) {
Log.d(TAG, "updateServer Stream: " + serverInfo.getStreams().get(i).getName()); Log.d(TAG, "updateServer Stream: " + serverStatus.getStreams().get(i).getName());
fragments.get(i).setStream(serverInfo.getStreams().get(i)); fragments.get(i).setStream(serverStatus.getStreams().get(i));
fragments.get(i).updateServer(serverInfo); fragments.get(i).updateServer(serverStatus);
} }
if (changed) { if (changed) {
streamCount = serverInfo.getStreams().size(); streamCount = serverStatus.getStreams().size();
notifyDataSetChanged(); notifyDataSetChanged();
tabLayout.setTabsFromPagerAdapter(SectionsPagerAdapter.this); tabLayout.setTabsFromPagerAdapter(SectionsPagerAdapter.this);
} }

View file

@ -18,14 +18,14 @@ public class RemoteControl implements TcpClient.TcpClientListener {
private TcpClient tcpClient; private TcpClient tcpClient;
private long msgId; private long msgId;
private RemoteControlListener listener; private RemoteControlListener listener;
private ServerInfo serverInfo; private ServerStatus serverStatus;
private String host; private String host;
private int port; private int port;
private HashMap<Long, String> pendingRequests; private HashMap<Long, String> pendingRequests;
public RemoteControl(RemoteControlListener listener) { public RemoteControl(RemoteControlListener listener) {
this.listener = listener; this.listener = listener;
serverInfo = new ServerInfo(); serverStatus = new ServerStatus();
msgId = 0; msgId = 0;
pendingRequests = new HashMap<>(); pendingRequests = new HashMap<>();
} }
@ -84,9 +84,9 @@ public class RemoteControl implements TcpClient.TcpClientListener {
Log.e(TAG, "error " + error.getInt("code") + ": " + error.getString("message")); Log.e(TAG, "error " + error.getInt("code") + ": " + error.getString("message"));
} else if (!TextUtils.isEmpty(request)) { } else if (!TextUtils.isEmpty(request)) {
if (request.equals("Server.GetStatus")) { if (request.equals("Server.GetStatus")) {
serverInfo.fromJson(json.getJSONObject("result")); serverStatus.fromJson(json.getJSONObject("result"));
if (listener != null) if (listener != null)
listener.onServerInfo(this, serverInfo); listener.onServerStatus(this, serverStatus);
} }
} }
} else { } else {
@ -94,7 +94,7 @@ public class RemoteControl implements TcpClient.TcpClientListener {
Log.d(TAG, "Notification: " + method); Log.d(TAG, "Notification: " + method);
if (method.contains("Client.On")) { if (method.contains("Client.On")) {
final ClientInfo clientInfo = new ClientInfo(json.getJSONObject("params").getJSONObject("data")); final ClientInfo clientInfo = new ClientInfo(json.getJSONObject("params").getJSONObject("data"));
// serverInfo.addClient(clientInfo); // serverStatus.addClient(clientInfo);
if (listener != null) { if (listener != null) {
ClientEvent event; ClientEvent event;
if (method.equals("Client.OnUpdate")) if (method.equals("Client.OnUpdate"))
@ -125,7 +125,7 @@ public class RemoteControl implements TcpClient.TcpClientListener {
@Override @Override
public void onConnected(TcpClient tcpClient) { public void onConnected(TcpClient tcpClient) {
Log.d(TAG, "onConnected"); Log.d(TAG, "onConnected");
serverInfo = new ServerInfo(); serverStatus = new ServerStatus();
if (listener != null) if (listener != null)
listener.onConnected(this); listener.onConnected(this);
} }
@ -133,7 +133,7 @@ public class RemoteControl implements TcpClient.TcpClientListener {
@Override @Override
public void onDisconnected(TcpClient tcpClient, Exception e) { public void onDisconnected(TcpClient tcpClient, Exception e) {
Log.d(TAG, "onDisconnected"); Log.d(TAG, "onDisconnected");
serverInfo = null; serverStatus = null;
if (listener != null) if (listener != null)
listener.onDisconnected(this, e); listener.onDisconnected(this, e);
} }
@ -229,6 +229,6 @@ public class RemoteControl implements TcpClient.TcpClientListener {
void onClientEvent(RemoteControl remoteControl, ClientInfo clientInfo, ClientEvent event); void onClientEvent(RemoteControl remoteControl, ClientInfo clientInfo, ClientEvent event);
void onServerInfo(RemoteControl remoteControl, ServerInfo serverInfo); void onServerStatus(RemoteControl remoteControl, ServerStatus serverStatus);
} }
} }

View file

@ -9,16 +9,16 @@ import java.util.ArrayList;
/** /**
* Created by johannes on 06.01.16. * Created by johannes on 06.01.16.
*/ */
public class ServerInfo implements JsonSerialisable { public class ServerStatus implements JsonSerialisable {
private ArrayList<ClientInfo> clients = new ArrayList<ClientInfo>(); private ArrayList<ClientInfo> clients = new ArrayList<ClientInfo>();
private ArrayList<Stream> streams = new ArrayList<Stream>(); private ArrayList<Stream> streams = new ArrayList<Stream>();
private Server server = null; private Server server = null;
public ServerInfo(JSONObject json) { public ServerStatus(JSONObject json) {
fromJson(json); fromJson(json);
} }
public ServerInfo() { public ServerStatus() {
} }
@Override @Override