@Override public String toString() { StringBuilder sb = new StringBuilder(); for (Map.Entry<AndroidDevice, AndroidDeviceMetadata> entry : register.entrySet()) { sb.append(entry.getKey()).append("\n") .append("container qualifier: ").append(entry.getValue().getContainerQualifier()).append("\n") .append("deployment names: ").append(entry.getValue().getDeploymentNames()).append("\n"); } return sb.toString(); } }
public void onAndroidDeviceReady(@Observes AndroidDeviceReady event, Container container) { if (!androidDeviceRegister.get().contains(event.getDevice())) { AndroidDeviceMetadata metadata = new AndroidDeviceMetadata(); metadata.setContainerQualifier(container.getName()); androidDeviceRegister.get().put(event.getDevice(), metadata); } } }
@Override public AndroidDevice getByContainerQualifier(String containerQualifier) { for (Map.Entry<AndroidDevice, AndroidDeviceMetadata> entry : register.entrySet()) { if (entry.getValue().getContainerQualifier().equals(containerQualifier)) { return entry.getKey(); } } return null; }
@Override public void addDeploymentForDevice(AndroidDevice device, String deploymentName) { AndroidDeviceMetadata metadata = register.get(device); if (metadata != null) { metadata.getDeploymentNames().add(deploymentName); } register.put(device, metadata); }
public void onBeforeDeploy(@Observes BeforeDeploy event, AndroidDevice androidDevice) { if (event.getDeployableContainer().getConfigurationClass() != AndroidContainerConfiguration.class) { return; } AndroidDeviceRegister register = androidDeviceRegister.get(); if (register.contains(androidDevice)) { AndroidDeviceMetadata metadata = register.getMetadata(androidDevice); metadata.addDeploymentName(event.getDeployment().getName()); register.put(androidDevice, metadata); } else { throw new IllegalStateException("It seems you are trying to deploy deployment to device which is not ready yet. " + "This should never happen."); } AndroidApplicationManager androidApplicationManager = new AndroidApplicationManager(androidDevice, androidSDK.get()); this.androidApplicationManager.set(androidApplicationManager); }
@Override public void removeByContainerQualifier(String containerQualifier) { Map.Entry<AndroidDevice, AndroidDeviceMetadata> toRemove = null; for (Map.Entry<AndroidDevice, AndroidDeviceMetadata> entry : register.entrySet()) { if (entry.getValue().getContainerQualifier().equals(containerQualifier)) { toRemove = entry; break; } } if (toRemove != null) { register.remove(toRemove.getKey()); } }
@Override public AndroidDevice getByDeploymentName(String deploymentName) { for (Map.Entry<AndroidDevice, AndroidDeviceMetadata> entry : register.entrySet()) { if (entry.getValue().getDeploymentNames().contains(deploymentName)) { return entry.getKey(); } } return null; }