Wrap IOException in QException

This commit is contained in:
2024-02-20 16:55:43 -06:00
parent 0b1b570f28
commit cf78f1cb94
2 changed files with 18 additions and 8 deletions

View File

@ -29,6 +29,7 @@ import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
import com.google.common.reflect.ClassPath; import com.google.common.reflect.ClassPath;
import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.logging.QLogger; import com.kingsrook.qqq.backend.core.logging.QLogger;
import com.kingsrook.qqq.backend.core.model.MetaDataProducerInterface; import com.kingsrook.qqq.backend.core.model.MetaDataProducerInterface;
import com.kingsrook.qqq.backend.core.model.metadata.layout.QAppMetaData; import com.kingsrook.qqq.backend.core.model.metadata.layout.QAppMetaData;
@ -50,13 +51,22 @@ public class MetaDataProducerHelper
** **
** Note - they'll be sorted by the sortOrder they provide. ** Note - they'll be sorted by the sortOrder they provide.
*******************************************************************************/ *******************************************************************************/
public static void processAllMetaDataProducersInPackage(QInstance instance, String packageName) throws IOException public static void processAllMetaDataProducersInPackage(QInstance instance, String packageName) throws QException
{
List<Class<?>> classesInPackage;
try
{ {
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
// find all the meta data producer classes in (and under) the package // // find all the meta data producer classes in (and under) the package //
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
List<Class<?>> classesInPackage = getClassesInPackage(packageName); classesInPackage = getClassesInPackage(packageName);
}
catch(Exception e)
{
throw (new QException("Error getting classes in package [" + packageName + "]", e));
}
List<MetaDataProducerInterface<?>> producers = new ArrayList<>(); List<MetaDataProducerInterface<?>> producers = new ArrayList<>();
for(Class<?> aClass : classesInPackage) for(Class<?> aClass : classesInPackage)
{ {
try try

View File

@ -22,7 +22,7 @@
package com.kingsrook.qqq.backend.core.model.metadata; package com.kingsrook.qqq.backend.core.model.metadata;
import java.io.IOException; import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.model.metadata.producers.TestAbstractMetaDataProducer; import com.kingsrook.qqq.backend.core.model.metadata.producers.TestAbstractMetaDataProducer;
import com.kingsrook.qqq.backend.core.model.metadata.producers.TestDisabledMetaDataProducer; import com.kingsrook.qqq.backend.core.model.metadata.producers.TestDisabledMetaDataProducer;
import com.kingsrook.qqq.backend.core.model.metadata.producers.TestImplementsMetaDataProducer; import com.kingsrook.qqq.backend.core.model.metadata.producers.TestImplementsMetaDataProducer;
@ -44,7 +44,7 @@ class MetaDataProducerHelperTest
** **
*******************************************************************************/ *******************************************************************************/
@Test @Test
void test() throws IOException void test() throws QException
{ {
QInstance qInstance = new QInstance(); QInstance qInstance = new QInstance();
MetaDataProducerHelper.processAllMetaDataProducersInPackage(qInstance, "com.kingsrook.qqq.backend.core.model.metadata.producers"); MetaDataProducerHelper.processAllMetaDataProducersInPackage(qInstance, "com.kingsrook.qqq.backend.core.model.metadata.producers");