Add initial commit
This commit is contained in:
parent
3b9d2841d4
commit
c641e457fd
@ -55,6 +55,22 @@ func (c Contacts) CreateContactFolder(
|
|||||||
return mdl, nil
|
return mdl, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CreateContactFolder makes a contact folder with the displayName of folderName.
|
||||||
|
// If successful, returns the created folder object.
|
||||||
|
func (c Contacts) GetContactFolders(
|
||||||
|
ctx context.Context,
|
||||||
|
user string,
|
||||||
|
) (models.ContactFolderCollectionResponseable, error) {
|
||||||
|
// TODO: Add pagination or just reuse EnumerateContainer logic
|
||||||
|
// with base id at root
|
||||||
|
mdl, err := c.Stable.Client().UsersById(user).ContactFolders().Get(ctx, nil)
|
||||||
|
if err != nil {
|
||||||
|
return nil, graph.Wrap(ctx, err, "creating contact folder")
|
||||||
|
}
|
||||||
|
|
||||||
|
return mdl, nil
|
||||||
|
}
|
||||||
|
|
||||||
// DeleteContainer deletes the ContactFolder associated with the M365 ID if permissions are valid.
|
// DeleteContainer deletes the ContactFolder associated with the M365 ID if permissions are valid.
|
||||||
func (c Contacts) DeleteContainer(
|
func (c Contacts) DeleteContainer(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
|
|||||||
@ -649,10 +649,18 @@ func establishContactsRestoreLocation(
|
|||||||
return cached, nil
|
return cached, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
folders[0] = "Corso_Restore_02-May-2023_00:06:19"
|
||||||
ctx = clues.Add(ctx, "is_new_cache", isNewCache)
|
ctx = clues.Add(ctx, "is_new_cache", isNewCache)
|
||||||
|
|
||||||
|
// This is where destination folder gets created by corso in graph
|
||||||
|
// This is the POST operation which may fail if the folder exists
|
||||||
temp, err := ac.Contacts().CreateContactFolder(ctx, user, folders[0])
|
temp, err := ac.Contacts().CreateContactFolder(ctx, user, folders[0])
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
// TODO:: Add status code check too
|
||||||
|
if graph.IsErrFolderExists(err) {
|
||||||
|
result, _ := ac.Contacts().GetContactFolders(ctx, user)
|
||||||
|
//fmt.Println(result.GetValue())
|
||||||
|
}
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -41,6 +41,7 @@ const (
|
|||||||
syncFolderNotFound errorCode = "ErrorSyncFolderNotFound"
|
syncFolderNotFound errorCode = "ErrorSyncFolderNotFound"
|
||||||
syncStateInvalid errorCode = "SyncStateInvalid"
|
syncStateInvalid errorCode = "SyncStateInvalid"
|
||||||
syncStateNotFound errorCode = "SyncStateNotFound"
|
syncStateNotFound errorCode = "SyncStateNotFound"
|
||||||
|
folderExists errorCode = "ErrorFolderExists"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@ -172,6 +173,10 @@ func IsMalwareResp(ctx context.Context, resp *http.Response) bool {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func IsErrFolderExists(err error) bool {
|
||||||
|
return hasErrorCode(err, folderExists)
|
||||||
|
}
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
// error parsers
|
// error parsers
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user