ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/coyote/http11/upgrade/UpgradeGroupInfo.java

Path
ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/coyote/http11/upgrade/UpgradeGroupInfo.java
Status
scanned
Type
file
Name
UpgradeGroupInfo.java
Extension
.java
Programming language
Java
Mime type
text/plain
File type
ASCII text, with CRLF line terminators
Tag

      
    
Rootfs path

      
    
Size
4192 (4.1 KB)
MD5
c357a1bfc200d5a2decc99764139763d
SHA1
89e2f440dd4f7d2131c2fce26579128bfb240f1d
SHA256
3a61c86f44ec9c7d50f38c0bfff1c83fba14c1f8208f8ad1030119b86e3c50f4
SHA512

      
    
SHA1_git
7e9cd400005c8e5f991a71326b014055aa49608c
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
UpgradeGroupInfo.java | 4.1 KB |

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.coyote.http11.upgrade; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.LongAdder; import org.apache.tomcat.util.modeler.BaseModelMBean; /** * This aggregates the data collected from each UpgradeInfo instance. */ public class UpgradeGroupInfo extends BaseModelMBean { private final Set<UpgradeInfo> upgradeInfos = (new ConcurrentHashMap<UpgradeInfo,Boolean>()).keySet(Boolean.TRUE); private final LongAdder deadBytesReceived = new LongAdder(); private final LongAdder deadBytesSent = new LongAdder(); private final LongAdder deadMsgsReceived = new LongAdder(); private final LongAdder deadMsgsSent = new LongAdder(); public void addUpgradeInfo(UpgradeInfo ui) { upgradeInfos.add(ui); } public void removeUpgradeInfo(UpgradeInfo ui) { if (ui != null) { deadBytesReceived.add(ui.getBytesReceived()); deadBytesSent.add(ui.getBytesSent()); deadMsgsReceived.add(ui.getMsgsReceived()); deadMsgsSent.add(ui.getMsgsSent()); upgradeInfos.remove(ui); } } public long getBytesReceived() { long bytes = deadBytesReceived.longValue(); for (UpgradeInfo ui : upgradeInfos) { bytes += ui.getBytesReceived(); } return bytes; } public void setBytesReceived(long bytesReceived) { deadBytesReceived.reset(); if (bytesReceived != 0) { deadBytesReceived.add(bytesReceived); } for (UpgradeInfo ui : upgradeInfos) { ui.setBytesReceived(bytesReceived); } } public long getBytesSent() { long bytes = deadBytesSent.longValue(); for (UpgradeInfo ui : upgradeInfos) { bytes += ui.getBytesSent(); } return bytes; } public void setBytesSent(long bytesSent) { deadBytesSent.reset(); if (bytesSent != 0) { deadBytesSent.add(bytesSent); } for (UpgradeInfo ui : upgradeInfos) { ui.setBytesSent(bytesSent); } } public long getMsgsReceived() { long msgs = deadMsgsReceived.longValue(); for (UpgradeInfo ui : upgradeInfos) { msgs += ui.getMsgsReceived(); } return msgs; } public void setMsgsReceived(long msgsReceived) { deadMsgsReceived.reset(); if (msgsReceived != 0) { deadMsgsReceived.add(msgsReceived); } for (UpgradeInfo ui : upgradeInfos) { ui.setMsgsReceived(msgsReceived); } } public long getMsgsSent() { long msgs = deadMsgsSent.longValue(); for (UpgradeInfo ui : upgradeInfos) { msgs += ui.getMsgsSent(); } return msgs; } public void setMsgsSent(long msgsSent) { deadMsgsSent.reset(); if (msgsSent != 0) { deadMsgsSent.add(msgsSent); } for (UpgradeInfo ui : upgradeInfos) { ui.setMsgsSent(msgsSent); } } public void resetCounters() { setBytesReceived(0); setBytesSent(0); setMsgsReceived(0); setMsgsSent(0); } }
Detected license expression
apache-2.0
Detected license expression (SPDX)
Apache-2.0
Percentage of license text
30.83
Copyrights

      
    
Holders

      
    
Authors

      
    
License detections License expression License expression SPDX
apache_2_0-4bde3f57-78aa-4201-96bf-531cba09e7de apache-2.0 Apache-2.0
URL Start line End line
http://www.apache.org/licenses/LICENSE-2.0 9 9