-
Notifications
You must be signed in to change notification settings - Fork 62
Upgrading
jeskepetr edited this page Dec 2, 2021
·
10 revisions
-
com.gooddata.sdk.service.featureflag.FeatureFlagService
->com.gooddata.sdk.service.hierarchicalconfig.HierarchicalConfigService
-
com.gooddata.sdk.model.featureflag.FeatureFlag
->com.gooddata.sdk.model.hierarchicalconfig.ConfigItem
-
com.gooddata.sdk.model.featureflag.FeatureFlags
->com.gooddata.sdk.model.hierarchicalconfig.ConfigItems
-
com.gooddata.sdk.model.featureflag.ProjectFeatureFlag/ProjectFeatureFlags
-> removed as no longer used
The library was split and packages were changed:
module | artifactId | package | contains |
---|---|---|---|
model | gooddata-java-model |
com.gooddata.sdk.model |
DTO objects, has minimum dependencies |
service | gooddata-java |
com.gooddata.sdk.service |
services |
As service module uses the same artifact as the 2.0 library and depends on model it's possible to just increase the version and refactor the packages. However if the code used only the DTOs, it's recommended to switch to model artifact.
- By default it still uses
GoodDataHttpClient
under the hood. - There is a new interface
GoodDataRestProvider
which can be implemented to provide differentRestTemplate
implementation. -
Authentication
interface was removed.
-
org.joda.time.DateTime
->java.time.ZonedDateTime
-
org.joda.time.Duration
->java.time.Duration
-
org.joda.time.LocalDate
->java.time.LocalDate
- Good SO thread about differences between various types in Java Date/Time API: https://stackoverflow.com/a/32443004
- All the things deprecated in 2.0 were removed in 3.0.
- Auto-registered spring beans renamed from ugly
getXxxService
toxxxService
. -
UriTemplate
s moved from DTOs to related services. -
DataStoreService
is initialised only when Sardine library is found on classpath. Sardine dependency is now optional, so you need to add it explicitly if you want to useDataStoreService
. -
RootLinks#getReleaseInfoUri
removed. If you were using it for pinging the platform, then use/gdc/ping
instead. - New Measure value filters - see https://github.com/gooddata/gooddata-java/issues/853.
- Remove ambiguous
AFM.NativeTotalItem
constructors - https://github.com/gooddata/gooddata-java/issues/551. - Use gooddata-rest-common-2.0.0 with redesigned paging support.
- the gooddata-java is compiled with java 1.8 target (java 1.7 and below no longer supported)
- the Jackson JSON Processor version raised from 2.7.0 to 2.8.0
- the Spring Framework version raised from 3.2.13.RELEASE to 4.3.1.RELEASE
- usage of spring 4.X was possible with version 1.0 using some tweaked
Closeable
wrapper forGoodDataHttpClient
- this should be no longer necessary
- usage of spring 4.X was possible with version 1.0 using some tweaked
- use set of strings for tags instead of one string (returned by methods
getTags()
inAbstractObj
,Entry
andMeta
) - return type of
DataLoadingColumn.getColumnUri()
andPartialMdArtifact.getStatusUri()
changed to String (return URI string directly) - removed deprecated objects and methods
- feature flag support has been removed from
ProjectService
- useFeatureFlagService
instead -
FeatureFlagService.deleteFeatureFlag()
replaced byFeatureFlagService.deleteProjectFeatureFlag()
- removed method
ProjectFeatureFlags.getItems
- useisEnabled()
orIterable
interface - removed method
FeatureFlags.getFeatureFlags
- useisEnabled()
orIterable
interface -
Warehouse.getJdbcConnectionString()
replaced byWarehouse.getConnectionUrl()
- removed
Paging(final int offset, final int count, final String next)
constructor - ommit the count parameter - removed method
DatasetException.getDataset()
- usegetDatasets()
returning the collection instead of it's String representation
- feature flag support has been removed from
- reporting
Grid
fixed to match the API reality-
GridElement
turned into marker interface coveringAttributeInGrid
and specialMetricGroup
-
Grid
columns can no longer beString
but must be of typeGridElement
- useMetricGroup
singleton instead of former"metricGroup"
String
-
Grid
rows are no longer only of typeAttributeInGrid
but can be of typeGridElement
(bothMetricGroup
andAttributeInGrid
) -
Grid
metrics are no longerGridElement
s but must be of newly introduced typeMetricElement
-
- the Jackson JSON Processor version raised from 1.9 to 2.5.4
- Maven group id changed to
com.gooddata
<dependency>
<groupId>com.gooddata</groupId>
<artifactId>gooddata-java</artifactId>
<version>${gooddata.version}</version>
</dependency>
- the Jackson JSON Processor version 1.9
- Maven group id is
cz.geek
<dependency>
<groupId>cz.geek</groupId>
<artifactId>gooddata-java</artifactId>
<version>${gooddata.version}</version>
</dependency>