/** * personium.io * Copyright 2014 FUJITSU LIMITED * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.fujitsu.dc.core.model.progress; import java.util.HashMap; import java.util.Map; /** * 非同期処理状況をインメモリでアクセスするためのクラス. */ class InProcessProgressManager extends ProgressManager { Map<String, Object> inProcessProgress = new HashMap<String, Object>(); @Override Progress doGetProgress(String fullKey) { return (Progress) inProcessProgress.get(fullKey); } @Override synchronized Boolean doPutProgress(String fullKey, Progress progress) { return inProcessProgress.put(fullKey, progress) != null; } @Override void doDeleteProgress(String fullKey) { inProcessProgress.remove(fullKey); } @Override void doDeleteAllProgress() { inProcessProgress.clear(); } }