전화하기.
Realm 함수를 호출합니다.
직렬화 엔진 은 아직 타사 라이브러리를 지원하지 않기 때문에 어떤 유형을 인수 및 반환 유형으로 사용할 수 있는지에 몇 가지 제한이 있습니다.
Primitives, Bson, MutableRealmInt, RealmUUID, ObjectId, RealmInstant, RealmAny, Array, Collection 및 Map은 유효한 인수 유형입니다.
결과는 Bson, MutableRealmInt, RealmUUID, ObjectId, RealmInstant, RealmAny 및 기본 유형으로만 역직렬화할 수 있습니다.
배열 또는 맵에 대한 Bson 구현은 BsonArray 및 BsonDocument 이며 유효한 반환 유형으로 사용할 수 있습니다.
Return
함수 호출의 결과입니다.
매개변수
호출할 함수의 이름입니다.
인수를 함수에 추가합니다.
함수 반환 값 유형입니다.
스로우
어떤 식으로든 함수가 실패한 경우.
App Services와 통신할 때 발생할 수 있는 기타 오류에 대비합니다. 자세한 내용은 AppException 을 참조하세요.
AppConfiguration.ejson 에 정의된 EJson 인코더를 사용하여 Atlas 함수를 호출합니다.
노트 이 메서드는 전체 문서 직렬화를 지원합니다. 호출 인수는 빌더 호출 빌더 를 사용하여 정의됩니다. 이 빌더를 사용하면 인수나 반환 유형을 특정 직렬 변환기에 수동으로 바인딩할 수도 있습니다. 인수와 반환 값은 AppConfiguration.ejson 으로 인코딩 및 디코딩됩니다.
val dog: Dog = user.functions.call("RetrieveDog") {
add("a parameter")
add(1.5, FloatSerializer) // sets the serializer for this particular argument
returnValueSerializer = DogSerializer // sets the serializer for the return type
}
다음과 같은 이유로 제네릭을 사용할 수 없습니다.
Any에 사용할 수 있는 직렬 변환기는 없습니다.
Return
함수 호출의 결과입니다.
매개변수
호출할 함수의 이름입니다.
호출 인수와 직렬 변환기를 설정하는 코드 블록입니다.
함수 반환 값 유형입니다.