This is a Java library for Uploadcare.
Supported features:
- Complete file and project APIs v0.6.
- Paginated resources are fetched as
List<T>. - CDN path builder.
- File uploading from a local storage, byte arrays, URLs, and signed uploads.
The minimum requirements to build this project are:
- Gradle 8.2 (you can use
./gradlewor.\gradlew.batwhich will download it for you). - JDK 1.8 (target is 1.7, so don't use much higher version).
- Running
./gradlew buildshould run successfully.
The latest stable library version is available at Maven Central.
Include following dependency into your project's pom.xml:
<dependency>
<groupId>com.uploadcare</groupId>
<artifactId>uploadcare</artifactId>
<version>3.5.2</version>
</dependency>Include following dependency into your project's build.gradle:
implementation 'com.uploadcare:uploadcare:3.5.1'
If you are using the kotlin style build.gradle.kts:
implementation("com.uploadcare:uploadcare:3.5.1")
Snapshot builds are published to GitHub Packages automatically:
- From pull requests: version format
{version}-PR-{pr-number}-SNAPSHOT(e.g.3.5.3-PR-42-SNAPSHOT) - From the
masterbranch: version format{version}-SNAPSHOT(e.g.3.5.3-SNAPSHOT)
To consume a snapshot build, add the GitHub Packages repository and authenticate with a personal access token (PAT) that has read:packages scope.
Add to your ~/.m2/settings.xml:
<settings>
<servers>
<server>
<id>uploadcare-snapshots</id>
<username>YOUR_GITHUB_USERNAME</username>
<password>YOUR_GITHUB_PAT</password>
</server>
</servers>
</settings>Add to your pom.xml:
<repositories>
<repository>
<id>uploadcare-snapshots</id>
<url>https://maven.pkg.github.com/uploadcare/uploadcare-java</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.uploadcare</groupId>
<artifactId>uploadcare</artifactId>
<version>3.5.3-SNAPSHOT</version>
</dependency>
</dependencies>Add to your build.gradle (or build.gradle.kts):
repositories {
maven {
name = "GitHubPackages"
url = uri("https://maven.pkg.github.com/uploadcare/uploadcare-java")
credentials {
username = project.findProperty("gpr.user") ?: System.getenv("GITHUB_ACTOR")
password = project.findProperty("gpr.key") ?: System.getenv("GITHUB_TOKEN")
}
}
}
dependencies {
implementation("com.uploadcare:uploadcare:3.5.3-SNAPSHOT")
}Get your API keys to proceed with the examples below.
Read class documentation on javadoc.io.
Client client = new Client("publickey", "secretkey");
Project project = client.getProject();
Project.Collaborator owner = project.getOwner();
List<URI> published = new ArrayList<URI>();
Iterable<File> files = client.getFiles().asIterable();
for (File file : files) {
if (file.isMadePublic()) {
published.add(file.getOriginalFileUrl());
}
}File file = client.getFile("85b5644f-e692-4855-9db0-8c5a83096e25");
CdnPathBuilder builder = file.cdnPath()
.resizeWidth(200)
.cropCenter(200, 200)
.grayscale();
URI url = Urls.cdn(builder);Client client = Client.demoClient();
java.io.File file = new java.io.File("olympia.jpg");
Uploader uploader = new FileUploader(client, sourceFile);
try {
File file = uploader.upload().save();
System.out.println(file.getOriginalFileUrl());
} catch (UploadFailureException e) {
System.out.println("Upload failed :(");
}