Primeros pasos en programación reactiva,III
네 번째 부분은 네 번째 부분이다.
이것은viendocómopodemos와elmodeloReactivivo로 구성된 중앙위원회로 이 위원회는 유엔 환경영향평가 단말기의 건설에 대한 반응을 책임진다.우리는 계속 노력할 것이다.
Modelos
Vamos a Constructuir el modelo que representa a a cada uno de los endpoints
public class Astronaut {
public String name;
public String craft;
@Override
public String toString(){
return name+" "+craft;
}
}
public class Astros {
public String message;
public int number;
public List<Astronaut>people;
}
public class IssPosition {
public double latitude;
public double longitude;
public String toString(){
return "lat:"+latitude+" log:"+longitude;
}
}
public class Iss {
public IssPosition iss_position;
public String toString(){
return "current position "+iss_position;
}
}
새로운 권력 하방자로서 우리는 통일된 모델을 필요로 하지 않는다public class Nasa {
public Astros astros;
public Iss iss;
public Nasa astros(Astros astros){
this.astros=astros;
return this;
}
public Nasa iss(Iss iss){
this.iss=iss;
return this;
}
}
거래처
새 인터페이스 클라이언트 Micronaut을 정의하여 dichos 모델을 재사용할 수 있도록 합니다
@Client("http://api.open-notify.org/")
public interface AstrosClient {
@Get("/astros.json")
Single<Astros>getAstros();
}
@Client("http://api.open-notify.org/")
public interface IssClient {
@Get("iss-now.json")
Single<Iss> getIss();
}
서비스
미국 항공우주국(Nasa)은 세 가지 다른 형식으로 새로운 항공 서비스를 제공했다
Single
.NasaService
,primero va a llamar a uno de los endpoints de forma bloqueante y después al-otro de la misma formablock
,primero va a llamar a uno de lso endpoints de forma reactiva y cuando se complete la llamada se llamaráal segundo endpoints de la mism formachain
, 완전한ambos 이전 결과의 최종 결과@Singleton
public class NasaService {
@Inject
IssClient issClient;
@Inject
AstrosClient astrosClient;
public Single<Nasa> blockingGet() {
...
}
public Single<Nasa>chain() {
...
}
public Single<Nasa>zip(){
...
}
}
무대 스케줄
public Single<Nasa> blockingGet() {
return Single.create(emitter -> {
Nasa nasa = new Nasa();
nasa.astros = astrosClient.getAstros().blockingGet();
nasa.iss = issClient.getIss().blockingGet();
emitter.onSuccess(nasa);
});
}
이 모드에서 미국 항공우주국(Nasa)의 서비스 건설 프로젝트는 전체 프로젝트를 완성하고 종점까지의 도로에서 완성할 것이다.최종 결과내가 보기에, 나는 이것이 잘못이라고 생각한다. 왜냐하면 나는 이것이 매우 중요한 문제라고 생각하기 때문이다.아드마스는 그들이 더 많은 격려를 받기를 바란다고 말했다.
사슬
BiFunction<Nasa, SingleEmitter<Nasa>, Disposable> issFunc = (nasa, emitter)->
issClient.getIss().subscribe(
iss ->
emitter.onSuccess(nasa.iss(iss))
,
err->
emitter.onError(err)
);
BiFunction<Nasa, SingleEmitter<Nasa>, Disposable> astrosFunc = (nasa, emitter)->
astrosClient.getAstros().subscribe(
astros ->
issFunc.apply(nasa.astros(astros), emitter)
,
err->
emitter.onError(err)
);
public Single<Nasa>chain() {
return Single.create(
emitter -> astrosFunc.apply(new Nasa(), emitter)
);
}
메모아유다르 에스터 메토도 와모스 아누크 포드리아스 세규르 우산도 클라스
zip
안니마스 란다스Básicamente definimos un método
BiFunction
que crea unchain
(como en caso block)과 lo que hace es aplicar una funciónSingle
.이것은 간소화된 기능으로 우주인들로 하여금 스페인과 스페인의 생활을 다시 체험하게 하여 국제 우주정거장의 종점에 대한 구독을 완성할 수 있다.Cuando este segundo endpoint se completa se devuelve el resultado alastrosFunc
"오리지널"우리의 이념은 형식적으로 모든 사람이 자신의 직책을 이행할 수 있도록 확보해야 한다는 것이다. 이것은 우리의 공동 목표이다.죄악의 금수, 모든 브룩엘 힐로 포드레모스 아세프타 마스가 간청한다.
지퍼
public Single<Nasa>zip(){
return Single.zip(astrosClient.getAstros(), issClient.getIss(),
(astros, iss) ->
new Nasa().astros(astros).iss(iss));
}
중간층emitter
은 시뮬레이션 형식의 일부로 관찰 가능한, 관찰 가능한, 관찰 가능한, 관찰 가능한, 관찰 가능한, 관찰 가능한 결과의 기능이다.메시지
La lista에서 "fija"의 ejecutar puede, como en este caso, o
이나 리스타 데엘로스.특히 제10조(creo)에서 관찰할 수 있는 금융기관의 기능
형식을 해석한 결과.하나의 목록에서, 너는 대상의 수조에서 함수를 찾을 수 있다
아니, 아니, 아니, 아니, 아니
컨트롤러
Básicamente el controller는 간단한 서비스 안내서입니다.
@Controller("/nasa")
public class NasaController {
@Inject
NasaService service;
@Get("/blocking")
Single<Nasa>blockingGet() {
return service.blockingGet();
}
@Get("/chain")
Single<Nasa>chain() {
return service.chain();
}
@Get("/zip")
Single<Nasa>zip(){
return service.zip();
}
}
JMeter
그는 세 개의 종점을 준비했는데, 각각 한 개의 종점, 한 개의 종점, 한 개의 종점이다.
무대 스케줄
잘못된 원인이 무엇인가
사슬
왜냐하면 네가 실수를 할 수 있는 건 아무것도 없으니까.
지퍼
중대한 문제에서 서로 존중할 수 있도록 잘못을 줄이는 어떠한 조치도 없다
프로필
소비자 권익 보호 계획은 가장 효과적인 반응 계획으로 순환과 반응의 가장 좋은 방안이다
Reference
이 문제에 관하여(Primeros pasos en programación reactiva,III), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jagedn/primeros-pasos-en-programacion-reactiva-iii-4b5p텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)