]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.debug.ui/src/org/simantics/debug/ui/internal/HashMultiMap.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.debug.ui / src / org / simantics / debug / ui / internal / HashMultiMap.java
1 /*******************************************************************************
2  * Copyright (c) 2007, 2010 Association for Decentralized Information Management
3  * in Industry THTH ry.
4  * All rights reserved. This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License v1.0
6  * which accompanies this distribution, and is available at
7  * http://www.eclipse.org/legal/epl-v10.html
8  *
9  * Contributors:
10  *     VTT Technical Research Centre of Finland - initial API and implementation
11  *******************************************************************************/
12 package org.simantics.debug.ui.internal;
13
14 import java.util.ArrayList;
15 import java.util.HashMap;
16 import java.util.List;
17
18 public class HashMultiMap<D,R> extends HashMap<D,List<R>> {
19
20     private static final long serialVersionUID = 8928508639019379832L;
21
22     public void add(D a, R b) {
23         List<R> elements = get(a);
24         if(elements == null) {
25             elements = new ArrayList<R>(1);
26             put(a, elements);
27         }
28         elements.add(b);
29     }
30     
31 //    public boolean remove(D a, R b) {
32 //        List<R> elements = get(a);
33 //        if(elements == null) 
34 //            return false;
35 //        if(elements.remove(b)) {
36 //            // This would makes in some applications
37 //            //if(elements.isEmpty())
38 //            //  remove(a);
39 //            return true;
40 //        }
41 //        else
42 //            return false;
43 //    }
44     
45 }