Fix Xtend warnings (#4578)

* Fix Xtend warnings

* Remove unused imports and unnecessary private modifiers
* Use === when comparing to null
* Replace deprecated initializeLater

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
pull/4561/head
Holger Friedrich 2025-02-15 16:24:48 +01:00 committed by GitHub
parent ab870d73df
commit 52e1185e41
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 33 additions and 40 deletions

View File

@ -29,8 +29,8 @@ import org.openhab.core.model.script.engine.ScriptEngine
class RulesStandaloneSetup extends RulesStandaloneSetupGenerated {
static Injector injector
private ScriptServiceUtil scriptServiceUtil;
private ScriptEngine scriptEngine;
ScriptServiceUtil scriptServiceUtil;
ScriptEngine scriptEngine;
override Injector createInjectorAndDoEMFRegistration() {
ScriptStandaloneSetup.doSetup(scriptServiceUtil, scriptEngine);

View File

@ -17,7 +17,6 @@ import java.util.Set
import org.openhab.core.items.Item
import org.openhab.core.items.ItemRegistry
import org.openhab.core.thing.ThingRegistry
import org.openhab.core.thing.events.ChannelTriggeredEvent
import org.openhab.core.types.Command
import org.openhab.core.types.State
import org.openhab.core.model.rule.rules.ChangedEventTrigger
@ -33,14 +32,12 @@ import org.openhab.core.model.rule.rules.ThingStateChangedEventTrigger
import org.openhab.core.model.rule.rules.UpdateEventTrigger
import org.openhab.core.model.script.jvmmodel.ScriptJvmModelInferrer
import org.openhab.core.model.script.scoping.StateAndCommandProvider
import org.eclipse.xtext.naming.IQualifiedNameProvider
import org.eclipse.xtext.xbase.jvmmodel.IJvmDeclaredTypeAcceptor
import org.eclipse.xtext.xbase.jvmmodel.JvmTypesBuilder
import org.slf4j.Logger
import org.slf4j.LoggerFactory
import org.eclipse.xtext.common.types.JvmFormalParameter
import org.eclipse.emf.common.util.EList
import org.openhab.core.events.Event
import org.openhab.core.automation.module.script.rulesupport.shared.ValueCache
/**
@ -54,13 +51,12 @@ import org.openhab.core.automation.module.script.rulesupport.shared.ValueCache
*/
class RulesJvmModelInferrer extends ScriptJvmModelInferrer {
private final Logger logger = LoggerFactory.getLogger(RulesJvmModelInferrer)
final Logger logger = LoggerFactory.getLogger(RulesJvmModelInferrer)
/**
* conveninence API to build and initialize JvmTypes and their members.
* convenience API to build and initialize JvmTypes and their members.
*/
@Inject extension JvmTypesBuilder
@Inject extension IQualifiedNameProvider
@Inject
ItemRegistry itemRegistry
@ -82,7 +78,7 @@ class RulesJvmModelInferrer extends ScriptJvmModelInferrer {
*/
def dispatch void infer(RuleModel ruleModel, IJvmDeclaredTypeAcceptor acceptor, boolean isPreIndexingPhase) {
val className = ruleModel.eResource.URI.lastSegment.split("\\.").head.toFirstUpper + "Rules"
acceptor.accept(ruleModel.toClass(className)).initializeLater [
acceptor.accept(ruleModel.toClass(className), [
members += ruleModel.variables.map [
toField(name, type?.cloneWithProxies) => [ field |
field.static = true
@ -175,7 +171,7 @@ class RulesJvmModelInferrer extends ScriptJvmModelInferrer {
body = rule.script
]
]
]
])
}
def private boolean containsParam(EList<JvmFormalParameter> params, String param) {

View File

@ -27,8 +27,8 @@ class ScriptStandaloneSetup extends ScriptStandaloneSetupGenerated {
static Injector injector
private ScriptServiceUtil scriptServiceUtil;
private ScriptEngine scriptEngine;
ScriptServiceUtil scriptServiceUtil;
ScriptEngine scriptEngine;
def ScriptStandaloneSetup setScriptServiceUtil(ScriptServiceUtil scriptServiceUtil) {
this.scriptServiceUtil = scriptServiceUtil;

View File

@ -46,7 +46,7 @@ import org.eclipse.xtext.xbase.typesystem.IBatchTypeResolver
*
*/
@SuppressWarnings("restriction")
public class ScriptInterpreter extends XbaseInterpreter {
class ScriptInterpreter extends XbaseInterpreter {
@Inject
ItemRegistry itemRegistry
@ -55,7 +55,7 @@ public class ScriptInterpreter extends XbaseInterpreter {
StateAndCommandProvider stateAndCommandProvider
@Inject
private IBatchTypeResolver typeResolver;
IBatchTypeResolver typeResolver;
@Inject
extension IJvmModelAssociations
@ -130,7 +130,7 @@ public class ScriptInterpreter extends XbaseInterpreter {
// Check if the JvmField is inferred
val sourceElement = jvmField.sourceElements.head
if (sourceElement != null) {
if (sourceElement !== null) {
context.assignValue(QualifiedName.create(jvmField.simpleName), value)
value
} else {
@ -142,7 +142,7 @@ public class ScriptInterpreter extends XbaseInterpreter {
if (expression === null) {
return null
} else if (expression instanceof QuantityLiteral) {
return doEvaluate(expression as QuantityLiteral, context, indicator)
return doEvaluate(expression, context, indicator)
} else {
return super.doEvaluate(expression, context, indicator)
}

View File

@ -25,7 +25,6 @@ import org.slf4j.LoggerFactory
import org.openhab.core.items.Item
import org.openhab.core.types.Command
import org.openhab.core.types.State
import org.openhab.core.events.Event
import org.openhab.core.automation.module.script.rulesupport.shared.ValueCache
/**
@ -39,7 +38,7 @@ import org.openhab.core.automation.module.script.rulesupport.shared.ValueCache
*/
class ScriptJvmModelInferrer extends AbstractModelInferrer {
static private final Logger logger = LoggerFactory.getLogger(ScriptJvmModelInferrer)
static final Logger logger = LoggerFactory.getLogger(ScriptJvmModelInferrer)
/** Variable name for the input string in a "script transformation" or "script profile" */
public static final String VAR_INPUT = "input";
@ -85,7 +84,7 @@ class ScriptJvmModelInferrer extends AbstractModelInferrer {
public static final String VAR_SHARED_CACHE = "sharedCache";
/**
* conveninence API to build and initialize JvmTypes and their members.
* convenience API to build and initialize JvmTypes and their members.
*/
@Inject extension JvmTypesBuilder
@ -106,7 +105,7 @@ class ScriptJvmModelInferrer extends AbstractModelInferrer {
*/
def dispatch void infer(Script script, IJvmDeclaredTypeAcceptor acceptor, boolean isPreIndexingPhase) {
val className = script.eResource.URI.lastSegment.split("\\.").head.toFirstUpper + "Script"
acceptor.accept(script.toClass(className)).initializeLater [
acceptor.accept(script.toClass(className), [
val Set<String> fieldNames = newHashSet()
@ -167,6 +166,6 @@ class ScriptJvmModelInferrer extends AbstractModelInferrer {
parameters += script.toParameter(VAR_SHARED_CACHE, sharedCacheTypeRef)
body = script
]
]
])
}
}

View File

@ -25,10 +25,8 @@ import org.openhab.core.config.core.ConfigDescriptionRegistry
import org.openhab.core.config.core.ConfigUtil
import org.openhab.core.config.core.Configuration
import org.openhab.core.common.AbstractUID
import org.openhab.core.common.registry.AbstractProvider
import org.openhab.core.i18n.LocaleProvider
import org.openhab.core.service.ReadyMarker
import org.openhab.core.service.ReadyMarkerFilter
import org.openhab.core.service.ReadyService
import org.openhab.core.service.StartLevelService
import org.openhab.core.thing.Channel
@ -77,31 +75,31 @@ import org.slf4j.LoggerFactory
@Component(immediate=true, service=ThingProvider)
class GenericThingProvider extends AbstractProviderLazyNullness<Thing> implements ThingProvider, ModelRepositoryChangeListener, ReadyService.ReadyTracker {
private static final String XML_THING_TYPE = "openhab.xmlThingTypes";
static final String XML_THING_TYPE = "openhab.xmlThingTypes";
private LocaleProvider localeProvider
LocaleProvider localeProvider
private ModelRepository modelRepository
ModelRepository modelRepository
private ThingTypeRegistry thingTypeRegistry
private ChannelTypeRegistry channelTypeRegistry
ThingTypeRegistry thingTypeRegistry
ChannelTypeRegistry channelTypeRegistry
private BundleResolver bundleResolver;
BundleResolver bundleResolver;
private Map<String, Collection<Thing>> thingsMap = new ConcurrentHashMap
Map<String, Collection<Thing>> thingsMap = new ConcurrentHashMap
private List<ThingHandlerFactory> thingHandlerFactories = new CopyOnWriteArrayList<ThingHandlerFactory>()
List<ThingHandlerFactory> thingHandlerFactories = new CopyOnWriteArrayList<ThingHandlerFactory>()
private ConfigDescriptionRegistry configDescriptionRegistry
ConfigDescriptionRegistry configDescriptionRegistry
private val List<QueueContent> queue = new CopyOnWriteArrayList
private var Thread lazyRetryThread = null
val List<QueueContent> queue = new CopyOnWriteArrayList
var Thread lazyRetryThread = null
private static final Logger logger = LoggerFactory.getLogger(GenericThingProvider)
static final Logger logger = LoggerFactory.getLogger(GenericThingProvider)
private val Set<String> loadedXmlThingTypes = new CopyOnWriteArraySet
val Set<String> loadedXmlThingTypes = new CopyOnWriteArraySet
private var modelLoaded = false
var modelLoaded = false
def void activate() {
modelRepository.getAllModelNamesOfType("things").forEach [
@ -138,7 +136,7 @@ class GenericThingProvider extends AbstractProviderLazyNullness<Thing> implement
val factory = thingHandlerFactories.findFirst [
supportsThingType(thingTypeUID)
]
if (factory == null && modelLoaded) {
if (factory === null && modelLoaded) {
logger.info("No ThingHandlerFactory found for thing {} (thing-type is {}). Deferring initialization.",
thingUID, thingTypeUID)
}
@ -602,7 +600,7 @@ class GenericThingProvider extends AbstractProviderLazyNullness<Thing> implement
}
def private createThingsFromModelForThingHandlerFactory(String modelName, ThingHandlerFactory factory) {
if (!loadedXmlThingTypes.contains(factory.bundleName) || modelRepository == null) {
if (!loadedXmlThingTypes.contains(factory.bundleName) || modelRepository === null) {
return
}
val things = thingsMap.get(modelName)
@ -633,7 +631,7 @@ class GenericThingProvider extends AbstractProviderLazyNullness<Thing> implement
]
}
private val lazyRetryRunnable = new Runnable() {
val lazyRetryRunnable = new Runnable() {
override run() {
logger.debug("Starting lazy retry thread")
while (!queue.empty) {