A key consisting of a service URL and type of an online service. The key is used to look up values in a dictionary exposed by a GenerateOfflineMapParameterOverrides. More...
Header: | #include <OfflineMapParametersKey.h> |
Since: | Esri::ArcGISRuntime 100.4 |
Public Functions
OfflineMapParametersKey() | |
OfflineMapParametersKey(Esri::ArcGISRuntime::Layer *layer) | |
OfflineMapParametersKey(Esri::ArcGISRuntime::ServiceFeatureTable *table) | |
OfflineMapParametersKey(Esri::ArcGISRuntime::UtilityNetwork *utilityNetwork) | |
OfflineMapParametersKey(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) | |
OfflineMapParametersKey(Esri::ArcGISRuntime::OfflineMapParametersKey &&other) | |
~OfflineMapParametersKey() | |
Esri::ArcGISRuntime::OfflineMapParametersKey | clone() const |
bool | isEmpty() const |
Esri::ArcGISRuntime::Error | keyError() const |
QUrl | serviceUrl() const |
Esri::ArcGISRuntime::OfflineMapParametersType | type() const |
bool | operator!=(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) const |
bool | operator<(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) const |
Esri::ArcGISRuntime::OfflineMapParametersKey & | operator=(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) |
Esri::ArcGISRuntime::OfflineMapParametersKey & | operator=(Esri::ArcGISRuntime::OfflineMapParametersKey &&other) |
bool | operator==(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) const |
Detailed Description
GenerateOfflineMapParameterOverrides consist of instances of data type specific parameters: GenerateGeodatabaseParameters, ExportTileCacheParameters and ExportVectorTilesParameters. Each instance is associated with the service URL that the parameters will be sent to when taking the given data offline.
The data type specific parameters can be retrieved from their respective dictionaries on the GenerateOfflineMapParameterOverrides with an instance of an OfflineMapParametersKey.
A key instance for a particular layer can be constructed by calling {Esri::ArcGISRuntime::OfflineMapParametersKey::OfflineMapParametersKey(Esri::ArcGISRuntime::Layer*)} {OfflineMapParametersKey(Esri::ArcGISRuntime::Layer*)}.
For a table, call OfflineMapParametersKey(Esri::ArcGISRuntime::ServiceFeatureTable*).
For a utility network, call OfflineMapParametersKey(Esri::ArcGISRuntime::UtilityNetwork*).
Use the key with the dictionary returned by one of these properties: GenerateOfflineMapParameterOverrides::generateGeodatabaseParameters, GenerateOfflineMapParameterOverrides::exportVectorTilesParameters, GenerateOfflineMapParameterOverrides::exportTileCacheParameters.
The particular dictionary property will be determined by the type property.
Note that a given parameters key/value pair may be shared by multiple layers in the map: for example a single GenerateGeodatabaseParameters could represent the online settings for multiple feature layers and tables which all access the same underlying feature service.e online settings for multiple feature layers and tables which all access the same underlying feature service.
Relevant samples:
- Generate Offline Map (Overrides): Take a web map offline with additional options for each layer.
Member Function Documentation
OfflineMapParametersKey::OfflineMapParametersKey ()
Constructor.
This constructor create an empty (invalid) key - see isEmpty. You should use the constructors accepting a layer or table instead.
[explicit]
OfflineMapParametersKey::OfflineMapParametersKey (Esri::ArcGISRuntime::Layer *layer)
Create an offline map parameters key for the given layer.
- layer. The layer that is to be used to access dictionaries in a GenerateOfflineMapParameterOverrides.
Layers that are supported for offline use are:
- FeatureLayer with a table which is a ServiceFeatureTable.
- ArcGISTiledLayer with an online URL
- ArcGISVectorTiledLayer with an online URL.
To construct a key the layer must be loaded, or if not loaded, have a service URL available in the layer's properties. The returned key can be used to retrieve a data type specific parameters object from one of the three parameter overrides dictionaries. The dictionary that the key is valid for is indicated by its type property:
Parameter Type | Dictionary |
---|---|
generateGeodatabase | GenerateOfflineMapParameterOverrides::generateGeodatabaseParameters |
exportVectorTiles | GenerateOfflineMapParameterOverrides::exportVectorTilesParameters |
exportTileCache | GenerateOfflineMapParameterOverrides::exportTileCacheParameters |
If the layer type is not supported, the constructed key will return true
for the isEmpty property and the keyError property will provide details of the problem.
[explicit]
OfflineMapParametersKey::OfflineMapParametersKey (Esri::ArcGISRuntime::ServiceFeatureTable *table)
Create an offline map parameters key for the given table.
- table. The table that is to be used to access dictionaries in a GenerateOfflineMapParameterOverrides.
The returned key can be used to retrieve a data type specific parameters object from the dictionary returned by GenerateOfflineMapParameterOverrides::generateGeodatabaseParameters.
If the table is not supported, the constructed key will return true
for the isEmpty property and the keyError property will provide details of the problem.
[explicit, since Esri::ArcGISRuntime 100.11]
OfflineMapParametersKey::OfflineMapParametersKey (Esri::ArcGISRuntime::UtilityNetwork *utilityNetwork )
Create an offline map parameters key for the specified UtilityNetwork.
- utilityNetwork - UtilityNetwork that is to be used to access dictionaries in GenerateOfflineMapParameterOverrides object.
A UtilityNetwork with a URL that points to a feature service, supports offline use when it returns true
for SyncCapabilities::isSupportsUtilityNetworkSystem.
The returned key can be used to retrieve a data-type-specific parameter object from the dictionary returned by GenerateOfflineMapParameterOverrides::generateGeodatabaseParameters
If the UtilityNetwork does not support taking Utility Network data offline, an error is returned with an empty handle.
This function was introduced in Esri::ArcGISRuntime 100.11.
OfflineMapParametersKey::OfflineMapParametersKey (const Esri::ArcGISRuntime::OfflineMapParametersKey &other)
Copy constructor from other OfflineMapParametersKey.
OfflineMapParametersKey::OfflineMapParametersKey (Esri::ArcGISRuntime::OfflineMapParametersKey &&other)
Move operator from other OfflineMapParametersKey.
OfflineMapParametersKey::~OfflineMapParametersKey ()
Destructor.
[since Esri::ArcGISRuntime 200.1]
Esri::ArcGISRuntime::OfflineMapParametersKey OfflineMapParametersKey::clone() const
Clones the OfflineMapParametersKey to a new instance.
Returns a new instance of the current OfflineMapParametersKey.
This function was introduced in Esri::ArcGISRuntime 200.1.
bool OfflineMapParametersKey::isEmpty () const
Returns whether this is a valid key object.
Returns true
when the key does not correspond to a valid set of parameters for taking a layer or table offline.
Esri::ArcGISRuntime::Error OfflineMapParametersKey::keyError () const
Returns an error describing any problems when creating this key object.
If there were no issues, the error will be empty.
QUrl OfflineMapParametersKey::serviceUrl () const
Returns the service URL of this key.
The service URL is the URL associated with a data specific parameter object in one of the dictionaries owned by a GenerateOfflineMapParameterOverrides instance.
Esri::ArcGISRuntime::OfflineMapParametersType OfflineMapParametersKey::type() const
Returns the type of parameters object used to take layers offline.
The type of this key indicates which parameters dictionary this key belongs to:
Parameter Type | Dictionary |
---|---|
generateGeodatabase | GenerateOfflineMapParameterOverrides::generateGeodatabaseParameters |
exportVectorTiles | GenerateOfflineMapParameterOverrides::exportVectorTilesParameters |
exportTileCache | GenerateOfflineMapParameterOverrides::exportTileCacheParameters |
See also OfflineMapParametersType.
[since Esri::ArcGISRuntime 200.2]
bool OfflineMapParametersKey::operator!=(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) const
Inequality operator. Returns true
if this object and other are not equal.
This function was introduced in Esri::ArcGISRuntime 200.2.
See also OfflineMapParametersKey::operator==.
bool OfflineMapParametersKey::operator<(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) const
Less than operator for other OfflineMapParametersKey.
Returns true
when this OfflineMapParametersKey is less than the other.
Esri::ArcGISRuntime::OfflineMapParametersKey &OfflineMapParametersKey::operator=(const Esri::ArcGISRuntime::OfflineMapParametersKey &other)
Assignment operator from other OfflineMapParametersKey.
Esri::ArcGISRuntime::OfflineMapParametersKey &OfflineMapParametersKey::operator=(Esri::ArcGISRuntime::OfflineMapParametersKey &&other)
Move operator from other OfflineMapParametersKey.
bool OfflineMapParametersKey::operator==(const Esri::ArcGISRuntime::OfflineMapParametersKey &other) const
Comparison operator with other OfflineMapParametersKey.
Returns true
when the two are equivalent.