Sync Library API

slibUsrInfo_t구조체에 데이터베이스 핸들 , 사용자 ID, 디바이스 ID값을 초기화하기 위한 함수이다.

입출력

설명

[In] HDBC hdbc

ODBC 연결 핸들(handle)

[In] HENV henv

ODBC환경 핸들(handle)

[In] String_t usrID

사용자 ID

[In] Short_t deviceID

사용자의 디바이스 ID

리턴

설명

없음

 

  • 서비스 타입의 모든 guidNum 리스트 검색(cmdFindGuidNum)

응용 서비스 타입의 guidNum 해당하는 엔트리를 검색하여 리스트를 얻는다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[Out]GuidNumListPtr_t *ppGuidNumLists

GuidNum리스트를 얻어오기 위한 연결 리스트

리턴

설명

Ret_t

SML_RESP_OK (성공)

SML_RESP_NO_ENTRY (검색 엔트리가 존재하지 않음)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

SML_RESP_COMMAND_FAILED (처리 실패)

 

  • 서비스 타입의 해당 엔트리 검색(cmdFindEntry)

응용 서비스 타입의 GuidNum 해당하는 엔트리를 검색하여 정보를 모두 얻는다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] Long_t guidNum

GUID

[Out]DataObjectPtr_t *pObj

해당 엔트리의 정보를 얻어오기 위한 구조체 포인터

리턴

설명

Ret_t

SML_RESP_OK (성공)

SML_RESP_NO_ENTRY (검색 엔트리가 존재하지 않음)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

SML_RESP_COMMAND_FAILED (처리 실패)

 

  • COPY 커맨드 처리(cmdCopyEntry)

응용 서비스 타입에 따라 원본 GUID 해당하는 데이터 아이템을 새로운 데이터 아이템으로 복사한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] Long_t OriginGuid

원본 GUID

[Out] Long_t *TargetGuid

복사된 엔트리의 GUID

리턴

설명

Ret_t

SML_RESP_ADDED (성공적으로 추가됨)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

SML_RESP_COMMAND_FAILED (처리 실패)

 

  • DELETE 커맨드 처리(cmdDeleteEntry)

응용 서비스 타입에 따라 데이터를 삭제한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] Long_t guidNum

삭제하려는 GUID

리턴

설명

Ret_t

SML_RESP_OK (성공)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

SML_RESP_COMMAND_FAILED (처리 실패)

 

  • REPLACE 커맨드 처리(cmdReplaceEntry)

응용 서비스 타입에 따라 데이터를 변경한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] Long_t guidNum

변경하려는 엔트리의 GUID

[In] DataObjectPtr_t pObj

엔트리의 정보

리턴

설명

Ret_t

SML_RESP_OK (성공)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

SML_RESP_COMMAND_FAILED (처리 실패)

 

  • ADD 커맨드 처리(cmdAddEntry)

응용 서비스 타입에 따라 데이터를 추가한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[Out] Long_t *guidNum

추가된 엔트리의 GUID

[In] DataObjectPtr_t pObj

엔트리의 정보

리턴

설명

Ret_t

SML_RESP_ADDED (성공적으로 추가됨)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

SML_RESP_COMMAND_FAILED (처리 실패)

 

dbID Sync Library내부의 응용 서비스 타입(slibServiceType_t_)으로 변환하고 실제적인 데이터 디코딩을 위해 내부의 decode() 함수를 호출한다. SmlPcdata 타입의 데이터를 내부 구조체 포맷인 dbEntryListPtr_t 타입으로 디코딩하여 반환한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] SmlPcdataPtr _t contents

디코딩하려는 내부 구조체 포맷의 데이터

리턴

설명

dbEntryListPtr_t

응용 서비스 타입과 컨텐츠를 리스트로 갖는 구조체

 

  • 데이터 디코딩을 위한 내부 함수(decode)

datDecode ()에서 호출되는 내부 함수이다. 응용 서비스 타입 관련 포맷(SmlPcdata)으로 인코딩되어 있는 컨텐츠를 내부 구조체 포맷(dbEntryListPtr_t)으로 디코딩한다.

입출력

설명

[In] slibServiceType_t sType

Sync Library 내에서의 응용 서비스 코드

[In] SmlPcdataPtr _t contents

디코딩하려는 응용 서비스 타입 관련 포맷의 데이터

리턴

설명

dbEntryListPtr_t

응용 서비스 타입과 컨텐츠를 리스트로 갖는 구조체

 

DataObject_t 타입의 컨텐츠를 응용 서비스 타입에 따라 인코딩하기 위해, 내부 함수인 encode() 호출하고 String_t 타입의 인코딩된 문자열을 받는다. String_t타입의 문자열을 다시 응용 서비스 타입으로 포맷(SmlPcdata)으로 바꾸어 반환한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] Long_t guidNum

인코딩하려는 엔트리의 GUID

[In] int nEndNull

컨텐츠 타입이 nEndNull 플래그가

TRUE이면 SML_PCDATA_OPAQUE,

FALSE이면 SML_PCDATA_STRING

[In] DataObjectPtr_t pObj

인코딩하려는 컨텐츠를 포함한 내부 구조체

[Out] SmlPcdataPtr _t *data

응용 서비스 타입으로 인코딩된 데이터

리턴

설명

Ret_t

SML_RESP_OK (성공)

SML_RESP_UNSUPPORTED_MEDIA (지원되지 않은 응용 서비스 타입)

 

  • 데이터 인코딩을 위한 내부 함수(encode)

내부 구조체 포맷의 컨텐츠를 응용 서비스 타입 관련 포맷으로 인코딩하기 위한 내부함수이다.

입출력

설명

[In] slibServiceType_t sType

Sync Library 내에서의 응용 서비스 코드

[In]VoidPtr_t pEntry

인코딩할 응용 서비스의 컨텐츠

리턴

설명

String_t

인코딩된 문자열

 

  • 응용 서비스 컨텐츠 비교(datCompare)

응용 서비스 타입에 따라 원본 엔트리와 대상 엔트리를 비교하며, 항목별 비교를 위해 내부함수인 compare() 호출한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

[In] DataObjectPtr_t pOrigin

원본 엔트리의 데이터

[In] DataObjectPtr_t pCompared

비교하려는 엔트리의 데이터

리턴

설명

Ret_t

SML_RESP_OK (성공)

SML_RESP_DATA_EQ (비교결과가 같음)

SML_RESP_DATA_NOT_EQ (비교결과가 같지 않음)

 

응용 서비스 컨텐츠의 항목을 비교한다.

입출력

설명

[In] String_t src

원본 문자열

[In] String_t target

비교하려는 문자열

리턴

설명

Ret_t

SML_RESP_DATA_EQ (비교결과가 같음)

SML_RESP_DATA_NOT_EQ (비교결과가 같지 않음)

 

  • Sync Library에서의 서비스 타입을 얻는 함수(getServiceType)

dbID 해당하는 Sync Library 내에서의 응용 서비스 코드를 찾아 반환한다.

입출력

설명

[In] String_t dbID

응용 서비스 식별자

리턴

설명

slibServiceType_t

Sync Library내에서의 응용 서비스 코드

 


문자열 생성 제어 기능, 응용 서비스별 컨텐츠의 토큰(token) 기능 기타 서버의 다른 프레임에서 범용적으로 이용 가능한 유틸리티 기능

vCard, vCalendar 등의 타입에서 주어진 문자열(*p)로부터 구분자와 토큰 값을 얻는다.

입출력

설명

[In] char** p

토큰을 분리해내기 위한 문자열

[In] bool no_empty_tokens

공백이 들어갈 있는지를 판단하는 플래그

[Out] char** t

분리되어진 토큰

[Out] char* delim

토큰 구분자

리턴

설명

없음

 

 

응용 서비스 타입에 따라 데이터를 토큰화한다.

입출력

설명

[In] slibServiceType_t sType

Sync Library 내에서의 응용 서비스 코드

[In] char *inData

토큰화하기 위한 데이터 내용

리턴

설명

Long_t

 토큰값

 

불필요한 문자를 문자열에서 제거한다.

 

입출력

설명

[In] const String_t a

원본 문자열

리턴

설명

String_t

불필요한 문자열이 제거되고 후의 문자열

 

(Null) 문자를 문자열에서 제거한다.

입출력

설명

[In] String_t sBuf

원본 문자열

리턴

설명

String_t

(NULL) 제거되고 후의 문자열

 

  • 10진수 변환(from_hex)

16진수(Hex)값을 10진수로 변환하는 함수이다.

 

입출력

설명

[In] String_t sInBuff

16진수

리턴

설명

char

변환된 10진수 값의 문자

 

  • URI로부터 LUID값을 얻는 함수(utParsingFromAbsolute)

졀대 또는 상대 경로의 URI로부터 LUID값과 dbName 정보를 얻어오는 함수이다.

입출력

설명

[In] String_t str

파싱하기 위한 URI

[Out] int *luidNum

LUID

[Out] String_t dbName

응용 서비스의 dbName

리턴

설명

Ret_t

SML_RESP_OK (성공)

 

  • URI 생성(utBuildToAbsolute)

LUID값을 포함한 URI 생성하는 함수이다.

입출력

설명

[In] String_t str

절대 또는 상대 URI 생성하기 위한 문자열

[In] int luidNum

LUID

[Out] String_t LocUri

생성된 URI

리턴

설명

Ret_t

SML_RESP_OK (성공)

 

소스 주소 값으로부터 GUID값과 서비스 식별자(dbID) 분리하는 함수이다.

: ./A10001 => “A” “10001” 분리

입출력

설명

[In] char* sourceStr

URI

[Out] int *guidNum

분리된 GUID

[Out] String_t *dbID

분리된 응용 식별자(dbID)

리턴

설명

Ret_t

SML_RESP_OK (성공)

 

  • UTC 타임을 생성(utMakeUTC)

로컬 현재 시간을 UTC 타임 포맷으로 변환하는 함수이다.

입출력

설명

[In] Long_t inTime

로컬 타임

리턴

설명

String_t

변환된UTC 타임

 

 


 Links

Main

SDE 소개

SEG

SyncLibrary