001package com.astrolabsoftware.FinkBrowser.Januser; 002 003/** <code>Classifiers</code> specifies how sources and alerts are classified. 004 * @opt attributes 005 * @opt operations 006 * @opt types 007 * @opt visibility 008 * @author <a href="mailto:Julius.Hrivnac@cern.ch">J.Hrivnac</a> */ 009public enum Classifiers { 010 FINK_PORTAL { 011 @Override 012 public Classifier instance() { 013 return new FinkPortalClassifier(); 014 } 015 }, 016 FEATURES { 017 @Override 018 public Classifier instance() { 019 return new FeaturesClassifier(); 020 } 021 }, 022 LIGHTCURVES { 023 @Override 024 public Classifier instance() { 025 return new LightCurvesClassifier(); 026 } 027 }, 028 TAG { 029 @Override 030 public Classifier instance() { 031 return new TagClassifier(); 032 } 033 }, 034 UNKNOWN { 035 @Override 036 public Classifier instance() { 037 return new FinkPortalClassifier(); 038 } 039 }; 040 041 /** Give the instance of the appropriate {@link Classifier}. 042 * @return The instance of the appropriate {@link Classifier}. */ 043 public abstract Classifier instance(); 044 045 }