Factory classes
Stay organized with collections
Save and categorize content based on your preferences.
Use the Samsung and Google factory classes to create ResellerService
objects.
With ResellerService
objects, a common set of methods
is available to claim and enroll Samsung and other Android devices.
SamsungResellerServiceFactory
Before you can use the SamsungResellerServiceFactory
class to generate a
ResellerService
object, you need to onboard with KDP.
Below is the method signature for creating a ResellerService
object using the
SamsungResellerServiceFactory
class:
public static ResellerService createResellerService(String resellerId, String serviceAccountKeyFilePath, String clientIdentifier) throws CommonException;
Property name |
Value |
Required |
Description |
resellerId |
string |
Yes |
Reseller's unique identifier, provided by the KDP system. |
serviceAccountKeyFilePath |
string |
Yes |
File path to the service account key. |
clientIdentifier |
string |
Yes |
Client identifier provided by the KDP system. |
Error behavior
When an error occurs, the library throws a
CommonException
containing one of the following error codes:
Error code |
INVALID_RESELLER_ID |
AUTHORIZATION_FAIL |
GoogleResellerServiceFactory
Before you can use the GoogleResellerServiceFactory
class to generate a
ResellerService
object, you must onboard to zero-touch enrollment
as a reseller.
Here's the method signature for creating a ResellerService
object using the
GoogleResellerServiceFactory
class:
public static ResellerService createResellerService(long resellerId, String serviceAccountKeyFilePath) throws CommonException, InterruptedException;
Property name |
Value |
Required |
Description |
resellerId |
long |
Yes |
Reseller's unique identifier, provided by the zero-touch system. |
serviceAccountKeyFilePath |
string |
Yes |
File path to the service account key. |
Error behavior
When an error occurs, the library throws a
CommonException
containing one of the following error codes:
Error code |
INVALID_PARAM_DEFAULT |
INVALID_RESELLER_ID |
INTERNAL_SERVER_ERROR |
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-28 UTC.
[null,null,["Last updated 2025-08-28 UTC."],[[["\u003cp\u003e\u003ccode\u003eResellerService\u003c/code\u003e objects, created using Samsung and Google factory classes, enable claiming and enrolling Samsung and other Android devices.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSamsungResellerServiceFactory\u003c/code\u003e requires onboarding with KDP and uses \u003ccode\u003eresellerId\u003c/code\u003e, \u003ccode\u003eserviceAccountKeyFilePath\u003c/code\u003e, and \u003ccode\u003eclientIdentifier\u003c/code\u003e to create a \u003ccode\u003eResellerService\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eGoogleResellerServiceFactory\u003c/code\u003e requires onboarding with zero-touch enrollment and uses \u003ccode\u003eresellerId\u003c/code\u003e and \u003ccode\u003eserviceAccountKeyFilePath\u003c/code\u003e to create a \u003ccode\u003eResellerService\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eBoth factories throw a \u003ccode\u003eCommonException\u003c/code\u003e when errors occur, with specific error codes like \u003ccode\u003eINVALID_RESELLER_ID\u003c/code\u003e and \u003ccode\u003eAUTHORIZATION_FAIL\u003c/code\u003e for Samsung and \u003ccode\u003eINVALID_PARAM_DEFAULT\u003c/code\u003e and \u003ccode\u003eINTERNAL_SERVER_ERROR\u003c/code\u003e for Google.\u003c/p\u003e\n"]]],["`ResellerService` objects are created using `SamsungResellerServiceFactory` or `GoogleResellerServiceFactory` classes. Each factory requires onboarding as a reseller and uses a unique `resellerId` and `serviceAccountKeyFilePath`. Samsung's factory also needs a `clientIdentifier`. `ResellerService` objects offer methods for device management. Errors trigger a `CommonException` with specific codes, like `INVALID_RESELLER_ID` or `AUTHORIZATION_FAIL` for Samsung and `INVALID_PARAM_DEFAULT` or `INTERNAL_SERVER_ERROR` for Google.\n"],null,["# Factory classes\n\nUse the Samsung and Google factory classes to create `ResellerService` objects.\nWith `ResellerService` objects, a common set of [methods](/zero-touch/reseller-library/reference/methods)\nis available to claim and enroll Samsung and other Android devices.\n\nSamsungResellerServiceFactory\n-----------------------------\n\nBefore you can use the `SamsungResellerServiceFactory` class to generate a\n`ResellerService` object, you need to [onboard with KDP](/zero-touch/guides/reseller-library/get-started#knox_deployment_program).\nBelow is the method signature for creating a `ResellerService` object using the\n`SamsungResellerServiceFactory` class: \n\n public static ResellerService createResellerService(String resellerId, String serviceAccountKeyFilePath, String clientIdentifier) throws CommonException;\n\n### Input parameters\n\n| Property name | Value | Required | Description |\n|-----------------------------|----------|----------|-----------------------------------------------------------|\n| `resellerId` | `string` | Yes | Reseller's unique identifier, provided by the KDP system. |\n| `serviceAccountKeyFilePath` | `string` | Yes | File path to the service account key. |\n| `clientIdentifier` | `string` | Yes | Client identifier provided by the KDP system. |\n\n### Error behavior\n\nWhen an error occurs, the library throws a\n[`CommonException`](/zero-touch/reseller-library/reference/objects#commonexception)\ncontaining one of the following error codes:\n\n| Error code |\n|-----------------------|\n| `INVALID_RESELLER_ID` |\n| `AUTHORIZATION_FAIL` |\n\nGoogleResellerServiceFactory\n----------------------------\n\nBefore you can use the `GoogleResellerServiceFactory` class to generate a\n`ResellerService` object, you must [onboard to zero-touch enrollment](/zero-touch/guides/reseller-library/get-started#zero-touch_enrollment)\nas a reseller.\n\nHere's the method signature for creating a `ResellerService` object using the\n`GoogleResellerServiceFactory` class: \n\n public static ResellerService createResellerService(long resellerId, String serviceAccountKeyFilePath) throws CommonException, InterruptedException;\n\n### Input parameters\n\n| Property name | Value | Required | Description |\n|-----------------------------|----------|----------|------------------------------------------------------------------|\n| `resellerId` | `long` | Yes | Reseller's unique identifier, provided by the zero-touch system. |\n| `serviceAccountKeyFilePath` | `string` | Yes | File path to the service account key. |\n\n### Error behavior\n\nWhen an error occurs, the library throws a\n[`CommonException`](/zero-touch/reseller-library/reference/objects#commonexception)\ncontaining one of the following error codes:\n\n| Error code |\n|-------------------------|\n| `INVALID_PARAM_DEFAULT` |\n| `INVALID_RESELLER_ID` |\n| `INTERNAL_SERVER_ERROR` |"]]