diff --git a/CHANGELOG.md b/CHANGELOG.md
index e6b37207..c0dd00a9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,14 @@
# CHANGELOG
+
+## Version 3.12.4
+
+### Date: 10-Oct-2023
+
+- Fixed Context Issue introduced in v3.12.3
+
+---
+
## Version 3.12.0
### Date: 02-May-2023
diff --git a/contentstack/build.gradle b/contentstack/build.gradle
index 0eb4b4e6..c086f8d9 100755
--- a/contentstack/build.gradle
+++ b/contentstack/build.gradle
@@ -16,12 +16,12 @@ android {
signingConfig signingConfigs.debug
}
buildTypes {
- //def localProperties = new Properties()
- //localProperties.load(new FileInputStream(rootProject.file("local.properties")))
+ def localProperties = new Properties()
+ localProperties.load(new FileInputStream(rootProject.file("local.properties")))
}
compileOptions {
- sourceCompatibility JavaVersion.VERSION_11
- targetCompatibility JavaVersion.VERSION_11
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
}
testOptions {
@@ -44,6 +44,6 @@ dependencies {
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
}
java {
- sourceCompatibility = JavaVersion.VERSION_11
- targetCompatibility = JavaVersion.VERSION_11
+ sourceCompatibility = JavaVersion.VERSION_1_8
+ targetCompatibility = JavaVersion.VERSION_1_8
}
\ No newline at end of file
diff --git a/contentstack/src/androidTest/java/com/contentstack/sdk/AssetTestCase.java b/contentstack/src/androidTest/java/com/contentstack/sdk/AssetTestCase.java
index 12db0c1d..a36735f3 100644
--- a/contentstack/src/androidTest/java/com/contentstack/sdk/AssetTestCase.java
+++ b/contentstack/src/androidTest/java/com/contentstack/sdk/AssetTestCase.java
@@ -80,7 +80,7 @@ public void onCompletion(ResponseType responseType, Error error) {
assertEquals("phoenix2.jpg", asset.getFileName());
assertEquals("482141", asset.getFileSize());
} else {
- assertEquals(0, error.getErrorCode());
+ assertEquals(105, error.getErrorCode());
}
}
});
diff --git a/contentstack/src/androidTest/java/com/contentstack/sdk/QueryTestCase.java b/contentstack/src/androidTest/java/com/contentstack/sdk/QueryTestCase.java
index f22319ea..1fae20be 100644
--- a/contentstack/src/androidTest/java/com/contentstack/sdk/QueryTestCase.java
+++ b/contentstack/src/androidTest/java/com/contentstack/sdk/QueryTestCase.java
@@ -38,7 +38,6 @@ public static void oneTimeSetUp() throws Exception {
}
-
@Test
public void test_01_fetchAllEntries() {
query.find(new QueryResultsCallBack() {
@@ -615,7 +614,6 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
@Test
public void test_41_entry_include_embedded_items_unit_test() throws Exception {
-
final Query query = TestCred.stack().contentType("user").query();
query.includeEmbeddedItems().find(new QueryResultsCallBack() {
@Override
diff --git a/contentstack/src/azure-eu/java/AzureEUTest.java b/contentstack/src/azure-eu/java/AzureEUTest.java
deleted file mode 100644
index 00821f86..00000000
--- a/contentstack/src/azure-eu/java/AzureEUTest.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package com.contentstack.sdk;
-
-import static org.junit.Assert.assertEquals;
-
-import android.content.Context;
-
-import androidx.test.ext.junit.runners.AndroidJUnit4;
-import androidx.test.platform.app.InstrumentationRegistry;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-@RunWith(AndroidJUnit4.class)
-public class ExampleInstrumentedTest {
- @Test
- public void useAppContext() {
- Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
- assertEquals("com.shaileshmishra.myapplication", appContext.getPackageName());
- }
-}
\ No newline at end of file
diff --git a/contentstack/src/azure-na/java/AzureNATest.java b/contentstack/src/azure-na/java/AzureNATest.java
deleted file mode 100644
index 00821f86..00000000
--- a/contentstack/src/azure-na/java/AzureNATest.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package com.contentstack.sdk;
-
-import static org.junit.Assert.assertEquals;
-
-import android.content.Context;
-
-import androidx.test.ext.junit.runners.AndroidJUnit4;
-import androidx.test.platform.app.InstrumentationRegistry;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-@RunWith(AndroidJUnit4.class)
-public class ExampleInstrumentedTest {
- @Test
- public void useAppContext() {
- Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
- assertEquals("com.shaileshmishra.myapplication", appContext.getPackageName());
- }
-}
\ No newline at end of file
diff --git a/contentstack/src/eu/java/EUInstrumentedTest.java b/contentstack/src/eu/java/EUInstrumentedTest.java
deleted file mode 100644
index 00821f86..00000000
--- a/contentstack/src/eu/java/EUInstrumentedTest.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package com.contentstack.sdk;
-
-import static org.junit.Assert.assertEquals;
-
-import android.content.Context;
-
-import androidx.test.ext.junit.runners.AndroidJUnit4;
-import androidx.test.platform.app.InstrumentationRegistry;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-@RunWith(AndroidJUnit4.class)
-public class ExampleInstrumentedTest {
- @Test
- public void useAppContext() {
- Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
- assertEquals("com.shaileshmishra.myapplication", appContext.getPackageName());
- }
-}
\ No newline at end of file
diff --git a/contentstack/src/main/java/com/contentstack/sdk/CSHttpConnection.java b/contentstack/src/main/java/com/contentstack/sdk/CSHttpConnection.java
index 013bacf0..73f8d3a0 100755
--- a/contentstack/src/main/java/com/contentstack/sdk/CSHttpConnection.java
+++ b/contentstack/src/main/java/com/contentstack/sdk/CSHttpConnection.java
@@ -241,8 +241,8 @@ public void send() {
headers.put("User-Agent", defaultUserAgent());
headers.put("X-User-Agent", "contentstack-android/" + SDKConstant.SDK_VERSION);
jsonObjectRequest = new JSONUTF8Request(requestId, url, requestJSON, response -> {
- responseJSON = response;
- if (responseJSON != null) {
+ this.responseJSON = response;
+ if (this.responseJSON != null) {
connectionRequest.onRequestFinished(CSHttpConnection.this);
}
}, this::generateBuiltError) {
diff --git a/contentstack/src/main/java/com/contentstack/sdk/Config.java b/contentstack/src/main/java/com/contentstack/sdk/Config.java
index ab5df458..9711d67b 100755
--- a/contentstack/src/main/java/com/contentstack/sdk/Config.java
+++ b/contentstack/src/main/java/com/contentstack/sdk/Config.java
@@ -42,12 +42,14 @@ public void setBranch(String branch) {
* Note: Default region sets to us
*
*
Example For Different Regions:
- *
- * config.setRegion(ContentstackRegion.US); - * config.setRegion(ContentstackRegion.EU); - * config.setRegion(ContentstackRegion.AZURE_EU); - * config.setRegion(ContentstackRegion.AZURE_NA); - *+ *
+ * {@code
+ * config.setRegion(ContentstackRegion.US);
+ * config.setRegion(ContentstackRegion.EU);
+ * config.setRegion(ContentstackRegion.AZURE_EU);
+ * config.setRegion(ContentstackRegion.AZURE_NA);
+ * }
+ *
*/
public ContentstackRegion setRegion(ContentstackRegion region) {
this.region = region;
diff --git a/contentstack/src/main/java/com/contentstack/sdk/Contentstack.java b/contentstack/src/main/java/com/contentstack/sdk/Contentstack.java
index 39d9d003..19a7be25 100755
--- a/contentstack/src/main/java/com/contentstack/sdk/Contentstack.java
+++ b/contentstack/src/main/java/com/contentstack/sdk/Contentstack.java
@@ -48,6 +48,7 @@ public static Stack stack(@NotNull Context context, @NotNull String apiKey, @Not
if (!TextUtils.isEmpty(apiKey) || !TextUtils.isEmpty(deliveryToken) || !TextUtils.isEmpty(environment)) {
Config config = new Config();
config.setEnvironment(environment);
+ ctx = context;
return initializeStack(context, apiKey, deliveryToken, config);
} else {
throw new Exception(SDKConstant.EMPTY_CREDENTIALS_NOT_ALLOWED);
@@ -71,6 +72,7 @@ public static Stack stack(@NotNull Context context, @NotNull String apiKey, @Not
public static Stack stack(@NotNull Context context, @NotNull String apiKey, @NotNull String deliveryToken, @NotNull String environment, @NotNull Config config) throws Exception {
if (!TextUtils.isEmpty(apiKey) || !TextUtils.isEmpty(deliveryToken) || !TextUtils.isEmpty(environment)) {
config.setEnvironment(environment);
+ ctx = context;
return initializeStack(context, apiKey, deliveryToken, config);
} else {
throw new Exception(SDKConstant.EMPTY_CREDENTIALS_NOT_ALLOWED);
diff --git a/contentstack/src/main/java/com/contentstack/sdk/SDKConstant.java b/contentstack/src/main/java/com/contentstack/sdk/SDKConstant.java
index 0ee62725..13e80796 100755
--- a/contentstack/src/main/java/com/contentstack/sdk/SDKConstant.java
+++ b/contentstack/src/main/java/com/contentstack/sdk/SDKConstant.java
@@ -9,7 +9,7 @@ public class SDKConstant {
public static final boolean debug = false;
public static boolean IS_NETWORK_AVAILABLE = true;
public static String PROTOCOL = "https://";
- public static String SDK_VERSION = "3.12.1";
+ public static String SDK_VERSION = "3.12.4";
public final static int NO_NETWORK_CONNECTION = 408;
public final static int TimeOutDuration = 30000; // timeout in millisecond
public final static int NumRetry = 0;
diff --git a/contentstack/src/main/java/com/contentstack/sdk/Stack.java b/contentstack/src/main/java/com/contentstack/sdk/Stack.java
index d4b4ee6a..1671fb38 100755
--- a/contentstack/src/main/java/com/contentstack/sdk/Stack.java
+++ b/contentstack/src/main/java/com/contentstack/sdk/Stack.java
@@ -617,7 +617,7 @@ public void onCompletion(SyncStack syncStack, Error error) {
});
} catch (Exception e) {
Error error = new Error();
- error.setErrorMessage(SDKConstant.PLEASE_PROVIDE_VALID_JSON);
+ error.setErrorMessage(e.getLocalizedMessage());
callback.onRequestFail(ResponseType.UNKNOWN, error);
}
}
diff --git a/scripts/publish-module.gradle b/scripts/publish-module.gradle
index 0ac64ce7..8b2f8df1 100644
--- a/scripts/publish-module.gradle
+++ b/scripts/publish-module.gradle
@@ -5,7 +5,7 @@ apply plugin: 'signing'
ext {
PUBLISH_GROUP_ID = 'com.contentstack.sdk'
PUBLISH_ARTIFACT_ID = 'android'
- PUBLISH_VERSION = '3.12.1'
+ PUBLISH_VERSION = '3.12.4-SNAPSHOT'
POM_NAME = 'contentstack-android'
WEBSITE = 'http://www.contentstack.com'
PUBLISH_DESCRIPTION = 'The Content Delivery SDK is used to retrieve content from your Contentstack account and deliver it to your web or mobile properties.'
@@ -37,7 +37,7 @@ artifacts {
afterEvaluate {
publishing {
publications {
- release(MavenPublication) {
+ aar(MavenPublication) {
groupId = PUBLISH_GROUP_ID
artifactId = PUBLISH_ARTIFACT_ID
version = PUBLISH_VERSION
diff --git a/scripts/publish-root.gradle b/scripts/publish-root.gradle
index 6ee1c85b..b7092b5b 100644
--- a/scripts/publish-root.gradle
+++ b/scripts/publish-root.gradle
@@ -15,17 +15,38 @@ if (secretPropsFile.exists()) {
nexusPublishing {
repositories {
+// sonatype {
+// stagingProfileId = sonatypeStagingProfileId
+// username = ossrhUsername
+// password = ossrhPassword
+// nexusUrl.set(uri("https://oss.sonatype.org/service/local/"))
+// snapshotRepositoryUrl.set(uri("https://oss.sonatype.org/content/repositories/snapshots/"))
+// if (project.version.endsWith('-SNAPSHOT')) {
+// snapshotRepositoryUrl.set(uri("https://oss.sonatype.org/content/repositories/snapshots"))
+// } else {
+// nexusUrl.set(uri("https://oss.sonatype.org/service/local/"))
+// }
+// }
+
+// sonatype {
+// stagingProfileId = sonatypeStagingProfileId
+// username = ossrhUsername
+// password = ossrhPassword
+//
+// if (project.version.endsWith('-SNAPSHOT')) {
+// snapshotRepositoryUrl.set(uri("https://oss.sonatype.org/content/repositories/snapshots"))
+// } else {
+// nexusUrl.set(uri("https://oss.sonatype.org/service/local/"))
+// }
+// }
+
sonatype {
stagingProfileId = sonatypeStagingProfileId
username = ossrhUsername
password = ossrhPassword
- nexusUrl.set(uri("https://oss.sonatype.org/service/local/"))
+ //nexusUrl.set(uri("https://oss.sonatype.org/service/local/"))
snapshotRepositoryUrl.set(uri("https://oss.sonatype.org/content/repositories/snapshots/"))
- if (project.version.endsWith('-SNAPSHOT')) {
- snapshotRepositoryUrl.set(uri("https://oss.sonatype.org/content/repositories/snapshots"))
- } else {
- nexusUrl.set(uri("https://oss.sonatype.org/service/local/"))
- }
}
+
}
}