Skip to content

Commit

Permalink
feat: add s3 list and does object exist api, merge master to current …
Browse files Browse the repository at this point in the history
…branch.
  • Loading branch information
Stefan committed Oct 18, 2022
2 parents 891783f + 5d424ab commit 0f8289b
Show file tree
Hide file tree
Showing 45 changed files with 1,866 additions and 454 deletions.
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ The Multi-Runtime Standard API for Mecha architecture Projects:
+ Environment (Env) -alpha
+ Native Redis (Redis) -alpha
+ Native SQL (SQL) -alpha
+ Native S3 (S3) -alpha
+ ...

## Getting Started
Expand All @@ -55,7 +56,7 @@ For a Maven project, add the following to your `pom.xml` file:
<dependency>
<groupId>group.rxcloud</groupId>
<artifactId>cloud-runtimes-api</artifactId>
<version>1.16-SNAPSHOT</version>
<version>1.17.RELEASE</version>
</dependency>
...
</dependencies>
Expand All @@ -69,6 +70,6 @@ For a Gradle project, add the following to your `build.gradle` file:
dependencies {
// ...
// https://mvnrepository.com/artifact/group.rxcloud/cloud-runtimes-api
implementation group: 'group.rxcloud', name: 'cloud-runtimes-api', version: '1.16-SNAPSHOT'
implementation group: 'group.rxcloud', name: 'cloud-runtimes-api', version: '1.17.RELEASE'
}
```
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import group.rxcloud.cloudruntimes.domain.CoreCloudRuntimes;
import group.rxcloud.cloudruntimes.domain.EnhancedCloudRuntimes;
import group.rxcloud.cloudruntimes.domain.NativeProtocolCloudRuntimes;
import group.rxcloud.cloudruntimes.domain.SaasCloudRuntimes;
import reactor.core.publisher.Mono;

import java.util.List;
Expand All @@ -29,7 +30,8 @@
public interface CloudRuntimesClient extends AutoCloseable,
CoreCloudRuntimes,
EnhancedCloudRuntimes,
NativeProtocolCloudRuntimes {
NativeProtocolCloudRuntimes,
SaasCloudRuntimes {

/**
* Registry Component names.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,13 @@
import group.rxcloud.cloudruntimes.domain.nativeproto.NativeSqlRuntimes;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.DeleteObjectInput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.DeleteObjectOutput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.DoesObjectExistInput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.DoesObjectExistOutput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.GetObjectInput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.GetObjectOutput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.InitRequest;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.ListObjectsInput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.ListObjectsOutput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.PutObjectInput;
import group.rxcloud.cloudruntimes.domain.nativeproto.awss3.PutObjectOutput;
import group.rxcloud.cloudruntimes.domain.nativeproto.redis.geo.GeoRadiusResponse;
Expand Down Expand Up @@ -611,4 +615,14 @@ default Mono<GetObjectOutput> getObject(GetObjectInput getObjectInput) {
default Mono<DeleteObjectOutput> deleteObject(DeleteObjectInput deleteObjectInput) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<ListObjectsOutput> listObjects(ListObjectsInput listObjectsInput) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default DoesObjectExistOutput doesObjectExist(DoesObjectExistInput doesObjectExistInput) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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.
*/
package group.rxcloud.cloudruntimes.domain;

import group.rxcloud.cloudruntimes.domain.saas.SaasCryptionRuntimes;
import group.rxcloud.cloudruntimes.domain.saas.SaasEmailRuntimes;
import group.rxcloud.cloudruntimes.domain.saas.SaasIMRuntimes;
import group.rxcloud.cloudruntimes.domain.saas.SaasIvrRuntimes;
import group.rxcloud.cloudruntimes.domain.saas.SaasProxyRuntimes;
import group.rxcloud.cloudruntimes.domain.saas.SaasSMSRuntimes;
import group.rxcloud.cloudruntimes.domain.saas.cryption.CryptRequest;
import group.rxcloud.cloudruntimes.domain.saas.cryption.CryptResponse;
import group.rxcloud.cloudruntimes.domain.saas.email.SendEmailRequest;
import group.rxcloud.cloudruntimes.domain.saas.email.SendEmailResponse;
import group.rxcloud.cloudruntimes.domain.saas.email.SendEmailWithTemplateRequest;
import group.rxcloud.cloudruntimes.domain.saas.email.SendEmailWithTemplateResponse;
import group.rxcloud.cloudruntimes.domain.saas.im.SendIMRequest;
import group.rxcloud.cloudruntimes.domain.saas.im.SendIMResponse;
import group.rxcloud.cloudruntimes.domain.saas.ivr.SendVoiceWithTemplateRequest;
import group.rxcloud.cloudruntimes.domain.saas.ivr.SendVoiceWithTemplateResponse;
import group.rxcloud.cloudruntimes.domain.saas.proxy.ProxyRequest;
import group.rxcloud.cloudruntimes.domain.saas.proxy.ProxyResponse;
import group.rxcloud.cloudruntimes.domain.saas.sms.SendSMSRequest;
import group.rxcloud.cloudruntimes.domain.saas.sms.SendSMSResponse;
import reactor.core.publisher.Mono;

public interface SaasCloudRuntimes extends
SaasCryptionRuntimes,
SaasEmailRuntimes,
SaasIMRuntimes,
SaasIvrRuntimes,
SaasProxyRuntimes,
SaasSMSRuntimes {

@Override
default Mono<CryptResponse> encrypt(CryptRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<CryptResponse> decrypt(CryptRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<SendEmailResponse> sendEmail(SendEmailRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<SendEmailWithTemplateResponse> sendEmailWithTemplate(SendEmailWithTemplateRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<SendIMResponse> sendIM(SendIMRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<SendVoiceWithTemplateResponse> sendVoiceWithTemplate(SendVoiceWithTemplateRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<ProxyResponse> getProxyInfo(ProxyRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}

@Override
default Mono<SendSMSResponse> sendSMS(SendSMSRequest request) {
throw new UnsupportedOperationException("CloudRuntimes Operate Unsupported.");
}
}
Loading

0 comments on commit 0f8289b

Please sign in to comment.