Gridarta Editor
NamedGameObjectMatcherFilterConfig.java
Go to the documentation of this file.
1 /*
2  * Gridarta MMORPG map editor for Crossfire, Daimonin and similar games.
3  * Copyright (C) 2000-2023 The Gridarta Developers.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  */
19 
20 package net.sf.gridarta.model.filter;
21 
22 import java.util.Collection;
23 import java.util.Collections;
24 import java.util.HashMap;
25 import java.util.Map;
26 import org.jetbrains.annotations.NotNull;
27 import org.jetbrains.annotations.Nullable;
28 
33 public class NamedGameObjectMatcherFilterConfig extends AbstractFilterConfig<NamedGameObjectMatcherFilter, NamedGameObjectMatcherFilterConfig> {
34 
35  @NotNull
36  private final Map<String, String> properties = new HashMap<>();
37 
43  super(filter);
44  }
45 
46  @NotNull
47  @Override
49  return this;
50  }
51 
52  public void removeAllProperties() {
53  properties.clear();
54  }
55 
56  public void setProperty(@NotNull final String name, @NotNull final String value) {
57  final String oldValue = properties.get(name);
58  if (oldValue != null && oldValue.equals(value)) {
59  return;
60  }
61 
62  properties.put(name, value);
64  }
65 
66  @Nullable
67  public String getProperty(@NotNull final String name) {
68  return properties.get(name);
69  }
70 
71  @NotNull
72  public Collection<String> getProperties() {
73  return Collections.unmodifiableSet(properties.keySet());
74  }
75 
76  @Override
77  public void accept(@NotNull final FilterConfigVisitor visitor) {
78  visitor.visit(this);
79  }
80 
81 }
name
name
Definition: ArchetypeTypeSetParserTest-ignoreDefaultAttribute1-result.txt:2
net.sf.gridarta.model.filter.AbstractFilterConfig< NamedGameObjectMatcherFilter, NamedGameObjectMatcherFilterConfig >::fireEvent
void fireEvent( @NotNull final FilterConfigChangeType filterConfigChangeType, @NotNull final FilterConfig<?, ?> filterConfig)
Notify all listeners that a FilterConfig has happened.
Definition: AbstractFilterConfig.java:95
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.properties
final Map< String, String > properties
Definition: NamedGameObjectMatcherFilterConfig.java:36
net.sf.gridarta.model.filter.AbstractFilterConfig< NamedGameObjectMatcherFilter, NamedGameObjectMatcherFilterConfig >::filter
final F filter
The Filter this filter config belongs to.
Definition: AbstractFilterConfig.java:56
net.sf.gridarta.model.filter.FilterConfigChangeType
Types of FilterConfig change types.
Definition: FilterConfigChangeType.java:26
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.getProperty
String getProperty(@NotNull final String name)
Definition: NamedGameObjectMatcherFilterConfig.java:67
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.removeAllProperties
void removeAllProperties()
Definition: NamedGameObjectMatcherFilterConfig.java:52
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.getProperties
Collection< String > getProperties()
Definition: NamedGameObjectMatcherFilterConfig.java:72
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilter
A Filter which filters according to a {}.
Definition: NamedGameObjectMatcherFilter.java:31
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.getThis
NamedGameObjectMatcherFilterConfig getThis()
Definition: NamedGameObjectMatcherFilterConfig.java:48
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.NamedGameObjectMatcherFilterConfig
NamedGameObjectMatcherFilterConfig(@NotNull final NamedGameObjectMatcherFilter filter)
Creates a new instance.
Definition: NamedGameObjectMatcherFilterConfig.java:42
net.sf.gridarta.model.filter.FilterConfigVisitor
Interface for visitors of filter configs.
Definition: FilterConfigVisitor.java:28
net.sf.gridarta.model.filter.FilterConfigChangeType.CHANGE
CHANGE
The filter config has changed.
Definition: FilterConfigChangeType.java:41
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig
Filter configuration of NamedGameObjectMatcherFilter instances.
Definition: NamedGameObjectMatcherFilterConfig.java:33
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.accept
void accept(@NotNull final FilterConfigVisitor visitor)
Definition: NamedGameObjectMatcherFilterConfig.java:77
net.sf.gridarta.model.filter.NamedGameObjectMatcherFilterConfig.setProperty
void setProperty(@NotNull final String name, @NotNull final String value)
Definition: NamedGameObjectMatcherFilterConfig.java:56
net.sf.gridarta.model.filter.AbstractFilterConfig
Abstract base class for filter configurations.
Definition: AbstractFilterConfig.java:33