com.google.api.services.androidenterprise.model.Entitlement Maven / Gradle / Ivy
/*
* Copyright 2010 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
/*
* This code was generated by https://github.com/google/apis-client-generator/
* (build: 2016-05-27 16:00:31 UTC)
* on 2016-07-18 at 14:12:22 UTC
* Modify at your own risk.
*/
package com.google.api.services.androidenterprise.model;
/**
* The existence of an entitlement resource means that a user has the right to use a particular app
* on any of their devices. This might be because the app is free or because they have been
* allocated a license to the app from a group license purchased by the enterprise.
*
* It should always be true that a user has an app installed on one of their devices only if they
* have an entitlement to it. So if an entitlement is deleted, the app will be uninstalled from all
* devices. Similarly if the user installs an app (and is permitted to do so), or the EMM triggers
* an install of the app, an entitlement to that app is automatically created. If this is impossible
* - e.g. the enterprise has not purchased sufficient licenses - then installation fails.
*
* Note that entitlements are always user specific, not device specific; a user may have an
* entitlement even though they have not installed the app anywhere. Once they have an entitlement
* they can install the app on multiple devices.
*
* The API can be used to create an entitlement. If the app is a free app, a group license for that
* app is created. If it's a paid app, creating the entitlement consumes one license; it remains
* consumed until the entitlement is removed. Optionally an installation of the app on all the
* user's managed devices can be triggered at the time the entitlement is created. An entitlement
* cannot be created for an app if the app requires permissions that the enterprise has not yet
* accepted.
*
* Entitlements for paid apps that are due to purchases by the user on a non-managed profile will
* have "userPurchase" as entitlement reason; those entitlements cannot be removed via the API.
*
* This is the Java data model class that specifies how to parse/serialize into the JSON that is
* transmitted over HTTP when working with the Google Play EMM API. For a detailed explanation see:
* https://developers.google.com/api-client-library/java/google-http-java-client/json
*
*
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public final class Entitlement extends com.google.api.client.json.GenericJson {
/**
* Identifies what kind of resource this is. Value: the fixed string
* "androidenterprise#entitlement".
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String kind;
/**
* The ID of the product that the entitlement is for, e.g. "app:com.google.android.gm".
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String productId;
/**
* The reason for the entitlement, e.g. "free" for free apps. This is temporary, it will be
* replaced by the acquisition kind field of group licenses.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String reason;
/**
* Identifies what kind of resource this is. Value: the fixed string
* "androidenterprise#entitlement".
* @return value or {@code null} for none
*/
public java.lang.String getKind() {
return kind;
}
/**
* Identifies what kind of resource this is. Value: the fixed string
* "androidenterprise#entitlement".
* @param kind kind or {@code null} for none
*/
public Entitlement setKind(java.lang.String kind) {
this.kind = kind;
return this;
}
/**
* The ID of the product that the entitlement is for, e.g. "app:com.google.android.gm".
* @return value or {@code null} for none
*/
public java.lang.String getProductId() {
return productId;
}
/**
* The ID of the product that the entitlement is for, e.g. "app:com.google.android.gm".
* @param productId productId or {@code null} for none
*/
public Entitlement setProductId(java.lang.String productId) {
this.productId = productId;
return this;
}
/**
* The reason for the entitlement, e.g. "free" for free apps. This is temporary, it will be
* replaced by the acquisition kind field of group licenses.
* @return value or {@code null} for none
*/
public java.lang.String getReason() {
return reason;
}
/**
* The reason for the entitlement, e.g. "free" for free apps. This is temporary, it will be
* replaced by the acquisition kind field of group licenses.
* @param reason reason or {@code null} for none
*/
public Entitlement setReason(java.lang.String reason) {
this.reason = reason;
return this;
}
@Override
public Entitlement set(String fieldName, Object value) {
return (Entitlement) super.set(fieldName, value);
}
@Override
public Entitlement clone() {
return (Entitlement) super.clone();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy