[ 
https://issues.apache.org/jira/browse/KAFKA-15853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17789703#comment-17789703
 ] 

Omnia Ibrahim edited comment on KAFKA-15853 at 11/25/23 6:12 PM:
-----------------------------------------------------------------

As KafkaConfig depends on many object compinanion of other Configs, Managers or 
other classes am thinking of moving only the object compinon of these at least 
to
 - OffsetConfig will move to group-coordinator
 - TransactionLog and TransactionStateManager to group-coordinator under 
transaction package
 - DynamicBrokerConfig to server -> may need a seprate Jira ticket or update 
this one to include move all KafkaConfig dependecies including 
`DynamicBrokerConfig`. The only challange here that DynamicBrokerConfig depends 
on LogCleaner object compinanion, DynamicLogConfig, DynamicThreadPool, 
DynamicListenerConfig, ProducerStateManagerConfig and DynamicRemoteLogConfig 
which all will need to move as well.
 - ReplicationQuotaManagerConfig to server -> Currently I will move it out of 
ReplicationQuotaManager.scala to its own class in server module
 - ClientQuotaManagerConfig to ServerĀ  -> Same as ReplicationQuotaManagerConfig 
will move it out of ClientQuotaManager.scala to its own class in server
 - kafka.server.KafkaRaftServer.\{BrokerRole, ControllerRole, ProcessRole} -> 
Move these objects of ProcessRole to server module or raft module (I think 
server is more fit).

[~ijuma] thoughts?


was (Author: omnia_h_ibrahim):
As KafkaConfig depends on many object compinanion of other Configs, Managers or 
other classes am thinking of moving only the object compinon of these at least 
to
 - OffsetConfig will move to group-coordinator
 - TransactionLog and TransactionStateManager to group-coordinator under 
transaction package
 - DynamicBrokerConfig to server -> may need a seprate Jira ticket or update 
this one to include move all KafkaConfig dependecies including 
`DynamicBrokerConfig`
 - ReplicationQuotaManagerConfig to server -> Currently I will move it out of 
ReplicationQuotaManager.scala to its own class in server module
 - ClientQuotaManagerConfig to ServerĀ  -> Same as ReplicationQuotaManagerConfig 
will move it out of ClientQuotaManager.scala to its own class in server
 - kafka.server.KafkaRaftServer.\{BrokerRole, ControllerRole, ProcessRole} -> 
Move these objects of ProcessRole to server module or raft module (I think 
server is more fit).

[~ijuma] thoughts?

> Move KafkaConfig to server module
> ---------------------------------
>
>                 Key: KAFKA-15853
>                 URL: https://issues.apache.org/jira/browse/KAFKA-15853
>             Project: Kafka
>          Issue Type: Sub-task
>            Reporter: Ismael Juma
>            Assignee: Omnia Ibrahim
>            Priority: Major
>
> The server module is a Java-only module, so this also requires converting 
> from Scala to Java.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to