8000 Deprecated youiengine by TikhomirovSergey · Pull Request #652 · appium/java-client · GitHub 8000
[go: up one dir, main page]

Skip to content

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


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

0