2011-07-26 2 views
2

GAE의 클라이언트 라이브러리에 대한 소스 코드는 here입니다.
아래 페이지에서 상대 :Google App Engine Java : "CompiledCursor"의 소스 코드는 어디에 있습니까?

이제
import com.google.apphosting.api.DatastorePb.CompiledCursor; 

, 그 클래스에 정의됩니다

http://code.google.com/p/googleappengine/source/browse/trunk/java/src/main/com/google/appengine/api/datastore/Cursor.java

.. 나는 6 행에이 가져 오기를 참조? SVN을 검색했지만 찾지 못했습니다. 몇 가지 내부적 인 사항을 이해하기 위해 Java에서 소스 코드를 찾고 있습니다.

그런데 "Pb"의 약자는 무엇입니까? GAE의 코드에서 이것을 많이보십시오.

고맙습니다!

답변

2

이 클래스는 (현재) 출시 된 소스의 일부는 아닙니다. 이는 과도하게 비밀이되거나 필요가 없기 때문에가 아니라 공개적으로 공개하지 않은 내부 구현 세부 정보 만 포함합니다. 이것은 문서화되지 않은 내부 구현의 세부 사항이므로 소스를 정리하고 소스를 릴리스하는 것이 최우선 순위는 아닙니다. 이 경우에는 (그리고 다른 질문에 답하기 위해) 컴파일 된 Protocol Buffer이므로 소스가 특히 유용하다는 것을 알지 못할 것입니다.

+0

당신이 GAE 팀 출신이라는 것을 깨달았습니다. 당신 주위에 당신 같은 사람이 있기를 바랍니다! (:이 질문의 마지막 목표는 인위적으로 Cursor 객체를 생성 할 수있게하는 것입니다. 여러 객체를 생성하여 여러 작업에 전달하고 싶습니다. 자신의 Cursor 객체를 만들 수도 있고 아니면 데이터 저장소? – Poni

+0

@Poni 무엇을 기반으로 커서를 만드나요? 데이터 스토어가 그것들을 발행하고 그 내용은 구현 세부 사항입니다. –

+0

커서가 500 번째 엔티티에서 시작하는 오프셋 번호를 기반으로 커서를 만듭니다. 그리고 1000 번째 엔티티 등에서 시작하는 또 다른 것입니다. 나는 불가능하다는 느낌을 가지고 있지만 누가 알 수 있습니다. 그래서, 어떻게 든 커스텀 커서를 만들 수 있습니까? – Poni

2

클래스가 공개 API의 일부라고 생각하지 않습니다. 보시다시피 DatastorePb (com.google. 앱 호스팅 .api)의 패키지 이름은 API 패키지 (com.google. appengine .api.

클래스는 실제로 패키지의 JavaDocs에 나열되지 않습니다. http://code.google.com/appengine/docs/java/javadoc/com/google/apphosting/api/package-summary.html이므로 소스가 공개되지 않았다고 말할 수 있습니다.

그러나 Java가 바이트 코드를 기반으로하는 경우 .class 파일을 디 컴파일 할 수 있습니다 (일부 국가에서는 이것이 불법 일 수 있음을 유의하십시오. 올바르게 리콜하면 적어도 다음과 같은 상황에서는 허용됩니다.).

클래스는 SDK를 기반 아래 GAE SDK에서 찾을 수 있습니다

/lib/user/appengine-api-1.0-sdk- 버전의 .jar/COM/구글/앱 호스팅/API/

+0

나는 그것이 다른 패키지에 있다는 것을 알아 차렸다. 나는 다른 누군가가 나를 위해 더 나은 대답을 할 수 있기를 바란다. 그리고 나는 이스라엘에있다. 법률은 주관적인 문제이다. 하하! :) (농담, 나는 엄격한 법의 추종자입니다!) – Poni

+0

법이 붙잡 혔을 때만 중요합니다. :) 또한 패키지에 대한 Google 검색을 시도했습니다 : http://www.google.se/search ? q = % 22package % 20com.google.apphosting.api % 22. DatastorePb 클래스는 소스에서 해당 선언을 가져야하므로 소스가 발견 될 가능성은 희박합니다. 아마도 Google에 소스를 요청할 수 있습니까? –

+0

누구나 우리보다 잘 모릅니다. – Poni