8 Commits

Author SHA1 Message Date
Philip P. Moltmann
5d0b53b684 Add RecommendationPlugin for Cloud Print
Reuses already existing infrastructure. The mMDNSFilteredDiscovery lambda
is called for every network service that supports #PRIVET_SERVICE. Then
the plugin checks the txt fields to make sure the printer is valid. The
check is not complete but good enough to make sure this is either a
cloud print capable printer or something that tries really hard.

Test: Connected to network with three printers, 2 GCP capable. Found the
      two printers
Fixes: 35766193
Change-Id: I7c9180c8c154fa092fec5b943a94bad77da74c86
2017-04-05 19:51:08 -07:00
Sergey Yakovlev
989c44be2c Update Samsung Print Recommendation Plugin (to support Mopria printers)
- Extract common part of MDNSFilterPlugin to common utils, MDNSFilteredDiscovery.java (other vendors can use it too)
- Refactor Samsung Print Recomendation Plugin to use MDNSFilteredDiscovery.java
- Add Mopria devices detection to Samsung Print Recomendation Plugin

*Samsung Print Service Plugin supports Mopria printers since v3.00.161011.

Test: Tested manually. Test app was developed to make sure that Samsung Print Recommendation plugin can find both Samsung and Mopria devices. Additionally MDNSFilterPlugin was tested on HP printers.
Change-Id: Idc0d311171495f879564336370a86f7a8890378b
2016-11-23 13:26:48 +03:00
Philip P. Moltmann
620c5af97b Handling of Fuji Xerox in RecommendationService.
- Display name
- Fix exclusion of Fuji from Xerox plugin

Bug: 28908572
Change-Id: I00c235a4eb09a681717eb3be65d586246a069f4b
2016-06-09 09:40:00 -07:00
Philip P. Moltmann
63498afff8 Move Xerox recommendation plugin to service.
Only minimal changes just to make it work together with the other
plugins.

Bug: 28908572
Change-Id: Icac226b45e8a6885036466451d0e9f54a3b3c640
(cherry picked from commit d97fdfd943295ea90d37b092e66b7ad1701587a1)
2016-05-31 23:35:17 +00:00
Philip P. Moltmann
a26b775dc1 Add Samsung print recommendation plugin.
The code follows the same pattern as the HP and Mopria plugins. As this code is contributed by a 3rd I'd rather submit this as is and let the original submitter clean it up once it appears in AOSP.

The code should not affect anything outside of the package it is in. In the package the code is strongly isolated so that one plugin cannot cause issues with another plugin.

The code was minimally tested on a Samsung SCX-3406FW .

Bug: 28908572
Change-Id: I33c2673d06711902dbd0f1d82563cf5d3fbfe86a
(cherry picked from commit 83defde08560ae2f1c3426466a2aa3e6944d6b79)
2016-05-23 17:41:40 +00:00
Philip P. Moltmann
ed04cbdc93 Adjust PrintRecommendationService for Konica Minolta.
The reported that:
- Name should be Koni_c_a Minolta
- kmkmkm should not be used as a mDNS identifier

Change-Id: I1ab1910f9a54a396c3bfa109266f6e805349d036
2016-05-12 10:44:08 -07:00
Philip P. Moltmann
bfaa472332 Add HP and Mopria print recommendation service
- Make util.MDnsUtils local to the mdnsFilter plugins
- Remove HP from the vendors recommended via the mdnsFilter plugin
- Copy in HP's code for HP and Mopria plugin
  - Do not change any code, beside
    - change "_ipp.tcp" to "_ipp._tcp"
    - Change package name
    - Do not use support lib annotations
    - Reduce class visibility if possible
    - Add AOSP copyright
    - Make ServiceResolveQueue a proper sigleton
    - Merge donottranslate and strings
- Add HP and Mopria plugin to RecommendationServiceImpl
- I needed to implement a multiplexer for NsdManager.DiscoveryListener
  as we can only have 10 of them active at a time.

Change-Id: I61caa3f4822f9c013140721ed801d18e6839df55
2016-05-03 17:10:14 -07:00
Philip P. Moltmann
b87c08da82 Expose additional fields needed by PrintRecommendationService GTS test
and move files into properly named directory.

Fixes: 28025769, 28214466
Change-Id: I14737515fc12525a1685a1a222f21913755ac988
2016-04-19 14:31:04 -07:00