public static ShardManagementException onShardMapperErrorGlobal()

in elastic-db-tools/src/main/java/com/microsoft/azure/elasticdb/shard/storeops/base/StoreOperationErrorHandler.java [177:233]


    public static ShardManagementException onShardMapperErrorGlobal(StoreResults result,
            StoreShardMap shardMap,
            StoreShard shard,
            ShardManagementErrorCategory errorCategory,
            String operationName,
            String storedProcName) {
        switch (result.getResult()) {
            case ShardMapDoesNotExist:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.ShardMapDoesNotExist,
                        Errors._Store_ShardMap_DoesNotExistGlobal, shardMap.getName(), storedProcName, operationName,
                        shard != null ? shard.getLocation().toString() : "*");

            case ShardDoesNotExist:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.ShardDoesNotExist, Errors._Store_Shard_DoesNotExistGlobal,
                        shard.getLocation(), shardMap.getName(), storedProcName, operationName);

            case ShardVersionMismatch:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.ShardVersionMismatch,
                        Errors._Store_Shard_VersionMismatchGlobal, shard.getLocation(), shardMap.getName(), storedProcName, operationName);

            case MappingDoesNotExist:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingDoesNotExist,
                        Errors._Store_ShardMapper_MappingDoesNotExistGlobal, shard.getLocation(), shardMap.getName(), storedProcName, operationName);

            case MappingRangeAlreadyMapped:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingRangeAlreadyMapped,
                        Errors._Store_ShardMapper_MappingPointOrRangeAlreadyMapped, shard.getLocation(), shardMap.getName(), "Range", storedProcName,
                        operationName);

            case MappingPointAlreadyMapped:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingPointAlreadyMapped,
                        Errors._Store_ShardMapper_MappingPointOrRangeAlreadyMapped, shard.getLocation(), shardMap.getName(), "Point", storedProcName,
                        operationName);

            case MappingNotFoundForKey:
                // Debug.Fail("MappingNotFoundForKey should not be raised during SqlOperation.");
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingNotFoundForKey,
                        Errors._Store_ShardMapper_MappingNotFoundForKeyGlobal, shardMap.getName(), storedProcName, operationName);

            case MappingIsAlreadyLocked:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingIsAlreadyLocked,
                        Errors._Store_ShardMapper_LockMappingAlreadyLocked, shard.getLocation(), shardMap.getName(), storedProcName, operationName);

            case MappingLockOwnerIdDoesNotMatch:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingLockOwnerIdDoesNotMatch,
                        Errors._Store_ShardMapper_LockOwnerDoesNotMatch, shard.getLocation(), shardMap.getName(), storedProcName, operationName);

            case MappingIsNotOffline:
                return new ShardManagementException(errorCategory, ShardManagementErrorCode.MappingIsNotOffline,
                        Errors._Store_ShardMapper_MappingIsNotOffline, shard.getLocation(), shardMap.getName(), storedProcName, operationName);

            case StoreVersionMismatch:
            case MissingParametersForStoredProcedure:
            default:
                return StoreOperationErrorHandler.onCommonErrorGlobal(result, operationName, storedProcName);
        }
    }