Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecated youiengine #652

Merged
merged 3 commits into from
Jun 10, 2017
Merged

Deprecated youiengine #652

merged 3 commits into from
Jun 10, 2017

Conversation

TikhomirovSergey
Copy link
Contributor

@TikhomirovSergey TikhomirovSergey commented Jun 3, 2017

Change list

  • all the content of the io.appium.java_client.youiengine package was marked as Deprecated
  • update of the com.google.code.gson:gson to v2.8.1

Types of changes

  • No changes in production code.
  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Details

This package was added at #429. It was accepted due to previous implementation was not flexible and it did not allowed user to use their own commands/JSONWP protocol extensions. Now AppiumDriver is not abstract and it can be used across supported platfoms.

Please take a look at the following sample:

...
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.Activity;
import io.appium.java_client.android.AndroidElement;
...

    private static AppiumDriver<AndroidElement> driver;
    private StartsActivity startsActivity;

        ...
        DesiredCapabilities capabilities = new DesiredCapabilities();
        ...
        driver = new AppiumDriver<>(...);

        ...
        startsActivity = new StartsActivity() {
            @Override
            public Response execute(String driverCommand, Map<String, ?> parameters) {
                return driver.execute(driverCommand, parameters);
            }

            @Override
            public Response execute(String driverCommand) {
                return driver.execute(driverCommand);
            }
        };
        Activity activity = new Activity("io.appium.android.apis", ".ApiDemos");
        startsActivity.startActivity(activity);

Also now it allows end user to extend command repository the following way:

MobileCommand.commandRepository.put("someCommand", new AppiumCommandInfo("someUrl", HttpMethod.POST));

Also I was motivated to remove this package because there is no activity/development.

@TikhomirovSergey
Copy link
Contributor Author

@@ -23,6 +23,11 @@

import java.net.URL;

@Deprecated
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suppose the common practice is to put a docsting before an annotation, but not after

@TikhomirovSergey
Copy link
Contributor Author

@mykola-mokhnach @SrinivasanTarget I have updated it a little bit and now I am trying to notify youiengine guys.

@SrinivasanTarget
Copy link
Member

LGTM @TikhomirovSergey

@mykola-mokhnach
Copy link
Contributor

@TikhomirovSergey I think the best place to find them is general channel of Appium's slack. We could add your account if you are still not there.

@pfoster-youitv
Copy link
Contributor

Now AppiumDriver is not abstract and it can be used across supported platfoms.

That was the main thing we needed and not be strictly tied to either iOS or Android elements/commands since we do not use Android or iOS native elements. 👍

@TikhomirovSergey
Copy link
Contributor Author

@pfoster-youitv
Ok. So we are waiting for the youiengine decision.

@TikhomirovSergey TikhomirovSergey merged commit 820a1ec into appium:master Jun 10, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants