source: josm/trunk/src/org/openstreetmap/josm/tools/PlatformVisitor.java@ 13838

Last change on this file since 13838 was 12776, checked in by bastiK, 7 years ago

see #15229 - remove dependency of NTV2GridShiftFileWrapper on Main.platform

  • PlatformHook bundles all application-wide platform dependent code, which is

convenient, but problematic for separating modules

  • introduces lightweight tools.Platform for adding platform dependent code more locally
File size: 605 bytes
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.tools;
3
4/**
5 * Visitor, to be used with {@link Platform}.
6 * @param <T> type that will be the result of the visiting operation
7 * @since 12776
8 */
9public interface PlatformVisitor<T> {
10 /**
11 * Visit {@link Platform#UNIXOID}
12 * @return result of the operation
13 */
14 T visitUnixoid();
15
16 /**
17 * Visit {@link Platform#WINDOWS}
18 * @return result of the operation
19 */
20 T visitWindows();
21
22 /**
23 * Visit {@link Platform#OSX}
24 * @return result of the operation
25 */
26 T visitOsx();
27}
Note: See TracBrowser for help on using the repository browser.